Class: Freightrain::ConverterFactory

Inherits:
Object
  • Object
show all
Defined in:
lib/freightrain/binding/converters/converter_factory.rb

Class Method Summary collapse

Class Method Details

.create(converter_name) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/freightrain/binding/converters/converter_factory.rb', line 6

def self.create(converter_name)
  name = converter_name.to_s.capitalize
  #first try to get one of the standard converters
  if Freightrain.const_defined? "#{name}Converter"
    return Freightrain.const_get("#{name}Converter").new
  end
  #then, if not found, try to get a registered custom converter
  begin
    return Freightrain["#{name}Converter".to_convention_sym]
  rescue
    return nil
  end
end