Module: NdrImport::File::Registry

Defined in:
lib/ndr_import/file/registry.rb

Overview

This mixin adds table enumeration functionality to importers.

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.handlersObject

Returns the value of attribute handlers.



8
9
10
# File 'lib/ndr_import/file/registry.rb', line 8

def handlers
  @handlers
end

Class Method Details

.files(filename, options = {}, &block) ⇒ Object



24
25
26
27
28
# File 'lib/ndr_import/file/registry.rb', line 24

def files(filename, options = {}, &block)
  return enum_for(:files, filename, options) unless block

  klass_factory(filename, nil, options).files(&block)
end

.register(klass, *formats) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/ndr_import/file/registry.rb', line 10

def register(klass, *formats)
  @handlers ||= {}

  formats.each do |format|
    @handlers[format] = klass
  end
end

.tables(filename, format = nil, options = {}, &block) ⇒ Object



30
31
32
33
34
# File 'lib/ndr_import/file/registry.rb', line 30

def tables(filename, format = nil, options = {}, &block)
  return enum_for(:tables, filename, format, options) unless block

  klass_factory(filename, format, options).tables(&block)
end

.unregister(*formats) ⇒ Object



18
19
20
21
22
# File 'lib/ndr_import/file/registry.rb', line 18

def unregister(*formats)
  formats.each do |format|
    @handlers.delete(format)
  end
end