class Hasta::FilteredS3File

An S3File delegate that drops filtered lines

Attributes

filter[R]

Public Class Methods

new(s3_file, filter) click to toggle source
Calls superclass method
# File lib/hasta/filtered_s3_file.rb, line 9
def initialize(s3_file, filter)
  super(s3_file)
  @filter = filter
end

Public Instance Methods

body() click to toggle source
# File lib/hasta/filtered_s3_file.rb, line 14
def body
  each_line.to_a.join
end
each_line() { |line| ... } click to toggle source
# File lib/hasta/filtered_s3_file.rb, line 22
def each_line
  return enum_for(:each_line) unless block_given?

  __getobj__.each_line do |line|
    yield line if filter.include?(line)
  end
end
fingerprint() click to toggle source
# File lib/hasta/filtered_s3_file.rb, line 18
def fingerprint
  @fingerprint ||= Digest::MD5.hexdigest("#{__getobj__.fingerprint}_#{filter.to_s}")
end