Module: BaseHarvester::DataFieldsClassMethods
- Defined in:
- lib/datafy/BaseHarvester.rb
Instance Method Summary collapse
- #attr_fields(fields) ⇒ Object
-
#details_fields ⇒ Object
end.
- #logFileName ⇒ Object
- #logger ⇒ Object
- #prop_accessor(*prop_groups) ⇒ Object
- #properties ⇒ Object
- #register_fields(fields) ⇒ Object
Instance Method Details
#attr_fields(fields) ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/datafy/BaseHarvester.rb', line 56 def attr_fields fields logger.debug "#{self.class}::#{__method__}" logger.debug "fields: #{fields}" return if fields.nil? props = properties fields.each do |name,hash| prop = hash[:property] props[prop] = name self.instance_eval do attr_accessor hash[:property].to_s end end end |
#details_fields ⇒ Object
end
101 102 103 104 105 106 107 |
# File 'lib/datafy/BaseHarvester.rb', line 101 def details_fields # puts "#{self.class}::#{__method__}" if @details_fields.nil? register_fields(nil) end @details_fields end |
#logFileName ⇒ Object
52 53 54 |
# File 'lib/datafy/BaseHarvester.rb', line 52 def logFileName @logFileName ||= FileProvider.getDataFileName("#{self.class}.log") end |
#logger ⇒ Object
48 49 50 |
# File 'lib/datafy/BaseHarvester.rb', line 48 def logger @logger ||= Logger.new(logFileName,5,1024000) end |
#prop_accessor(*prop_groups) ⇒ Object
70 71 72 73 74 75 76 77 78 |
# File 'lib/datafy/BaseHarvester.rb', line 70 def prop_accessor *prop_groups logger.debug "#{self}::#{__method__}" logger.debug *prop_groups.inspect prop_groups.each do |props| logger.debug props attr_fields props register_fields props end end |
#properties ⇒ Object
80 81 82 |
# File 'lib/datafy/BaseHarvester.rb', line 80 def properties @properties ||= Hash.new end |
#register_fields(fields) ⇒ Object
84 85 86 87 88 89 90 91 |
# File 'lib/datafy/BaseHarvester.rb', line 84 def register_fields fields logger.debug "#{self.class}::#{__method__} fields: #{fields}" return if fields.nil? @data_fields = {} if @data_fields.nil? @data_fields.merge!(fields) unless fields.nil? @data_fields.merge!(BASE_HARVEST_DATA_FIELDS) attr_fields fields end |