class Crabfarm::BaseReducer

Attributes

document[R]
params[R]
raw_document[R]

Public Class Methods

new(_target, _params) click to toggle source
Calls superclass method
# File lib/crabfarm/base_reducer.rb, line 30
def initialize(_target, _params)
  reset_fields

  @raw_document = parser.preprocess_parsing_target _target
  @document = parser.parse @raw_document
  @params = _params

  super @document
end
parser() click to toggle source
# File lib/crabfarm/base_reducer.rb, line 17
def self.parser
  @parser ||= Strategies.load(:parser, @parser_name || Crabfarm.config.parser)
end
snapshot_path(_name=nil) click to toggle source
# File lib/crabfarm/base_reducer.rb, line 21
def self.snapshot_path(_name=nil)
  _name = self.to_s.underscore if _name.nil?
  Utils::Resolve.snapshot_path _name, parser.format
end
use_parser(_parser_name) click to toggle source
# File lib/crabfarm/base_reducer.rb, line 13
def self.use_parser(_parser_name)
  @parser_name = _parser_name
end

Public Instance Methods

__getobj__() click to toggle source
# File lib/crabfarm/base_reducer.rb, line 48
def __getobj__
  @document
end
__setobj__(obj) click to toggle source
# File lib/crabfarm/base_reducer.rb, line 52
def __setobj__(obj)
  @document = obj
end
parser() click to toggle source
# File lib/crabfarm/base_reducer.rb, line 26
def parser
  self.class.parser
end
run() click to toggle source
# File lib/crabfarm/base_reducer.rb, line 40
def run
  raise NotImplementedError.new
end
to_json(_options=nil) click to toggle source
# File lib/crabfarm/base_reducer.rb, line 44
def to_json(_options=nil)
  field_hash.to_json _options
end