Module: Scruber::Helpers::FetcherAgent

Defined in:
lib/scruber/helpers/fetcher_agent.rb

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.adapterObject



15
16
17
18
19
20
21
# File 'lib/scruber/helpers/fetcher_agent.rb', line 15

def adapter
  unless @adapter
    @adapter = ::Scruber.configuration.fetcher_agent_adapter || _adapters.keys.first
  end
  raise Scruber::ArgumentError.new("Adapter not found") unless @adapter
  _adapters[@adapter]
end

Class Method Details

.[](label) ⇒ Object



30
31
32
# File 'lib/scruber/helpers/fetcher_agent.rb', line 30

def [](label)
  _adapters[label]
end

._adaptersObject



34
35
36
# File 'lib/scruber/helpers/fetcher_agent.rb', line 34

def _adapters
  @_adapters ||= {}
end

.add_adapter(label, claz) ⇒ Object



23
24
25
26
27
28
# File 'lib/scruber/helpers/fetcher_agent.rb', line 23

def add_adapter(label, claz)
  # unless claz.method_defined?(:run)
  #   raise NoMethodError, "run is not declared in the #{label.inspect}"
  # end
  _adapters[label] = claz
end

.find(id) ⇒ Object



11
12
13
# File 'lib/scruber/helpers/fetcher_agent.rb', line 11

def find(id)
  adapter.find(id)
end

.new(options = {}) ⇒ Object



7
8
9
# File 'lib/scruber/helpers/fetcher_agent.rb', line 7

def new(options={})
  adapter.new(::Scruber.configuration.fetcher_agent_options.merge(options))
end