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.



6
7
8
# File 'lib/ndr_import/file/registry.rb', line 6

def handlers
  @handlers
end

Class Method Details

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



22
23
24
25
26
# File 'lib/ndr_import/file/registry.rb', line 22

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



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

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

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

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



28
29
30
31
32
# File 'lib/ndr_import/file/registry.rb', line 28

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



16
17
18
19
20
# File 'lib/ndr_import/file/registry.rb', line 16

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