Class: Assonnato::ApiFactory
- Inherits:
-
Object
- Object
- Assonnato::ApiFactory
- Defined in:
- lib/assonnato/api_factory.rb
Class Method Summary collapse
- .convert_to_constant(classes) ⇒ Object
- .create_instance(klass, options) ⇒ Object
- .new(klass, options = {}) ⇒ Object
Class Method Details
.convert_to_constant(classes) ⇒ Object
21 22 23 24 25 |
# File 'lib/assonnato/api_factory.rb', line 21 def convert_to_constant(classes) classes.split('::').inject(Assonnato) do |constant, klass| constant.const_get klass end end |
.create_instance(klass, options) ⇒ Object
17 18 19 |
# File 'lib/assonnato/api_factory.rb', line 17 def create_instance(klass, ) convert_to_constant(klass.to_s).new end |
.new(klass, options = {}) ⇒ Object
12 13 14 15 |
# File 'lib/assonnato/api_factory.rb', line 12 def new(klass, = {}) return create_instance(klass, ) if klass raise ArgumentError, 'must provide API class to be instantiated' end |