Module: Ddr::Extraction::Adapters

Defined in:
lib/ddr/extraction/adapters.rb,
lib/ddr/extraction/adapters/adapter.rb,
lib/ddr/extraction/adapters/registry.rb,
lib/ddr/extraction/adapters/fits_adapter.rb,
lib/ddr/extraction/adapters/null_adapter.rb,
lib/ddr/extraction/adapters/tika_adapter.rb

Defined Under Namespace

Classes: Adapter, FitsAdapter, NullAdapter, Registry, TikaAdapter

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.defaultObject

Accessor for the name of the default adapter



10
11
12
# File 'lib/ddr/extraction/adapters.rb', line 10

def default
  @default
end

Class Method Details

.get_adapter(adapter_name = nil) ⇒ Class

Return the requested adapter by name.

If a name is not supplied, return the default adapter.

Parameters:

  • adapter_name (Symbol) (defaults to: nil)

    the name of the requested adapter.

Returns:

  • (Class)

    the adapter class requested.

See Also:



18
19
20
21
22
23
24
# File 'lib/ddr/extraction/adapters.rb', line 18

def get_adapter(adapter_name = nil)
  if adapter_name
    Registry.instance.adapters[adapter_name.to_sym]
  else
    get_default_adapter
  end
end

.get_default_adapterObject

Return the default adapter. Raises an exception if the default adapter has not been configured.



28
29
30
31
# File 'lib/ddr/extraction/adapters.rb', line 28

def get_default_adapter
  raise "The default adapter has not been configured." unless default
  get_adapter(default)
end

.method_missing(name, *args) ⇒ Object



49
50
51
52
# File 'lib/ddr/extraction/adapters.rb', line 49

def method_missing(name, *args)
  return get_adapter(name) if Registry.instance.adapters.key?(name.to_sym)
  super
end

.register(name, adapter) ⇒ Object

Registers an adapter.

Parameters:

  • name (Symbol)

    the name of the adapter.

  • adapter (Class)

    the adapter class to register.

See Also:



38
39
40
# File 'lib/ddr/extraction/adapters.rb', line 38

def register(name, adapter)
  Registry.instance.register(name, adapter)
end