Class: Vessel::Driver::Registry
- Inherits:
-
Object
- Object
- Vessel::Driver::Registry
- Includes:
- Singleton
- Defined in:
- lib/vessel/driver/registry.rb
Instance Attribute Summary collapse
-
#drivers ⇒ Object
readonly
Returns the value of attribute drivers.
Instance Method Summary collapse
- #build(settings = nil) ⇒ Object
-
#initialize ⇒ Registry
constructor
A new instance of Registry.
- #register(name, klass) ⇒ Object
Constructor Details
#initialize ⇒ Registry
Returns a new instance of Registry.
12 13 14 |
# File 'lib/vessel/driver/registry.rb', line 12 def initialize @drivers = {} end |
Instance Attribute Details
#drivers ⇒ Object (readonly)
Returns the value of attribute drivers.
10 11 12 |
# File 'lib/vessel/driver/registry.rb', line 10 def drivers @drivers end |
Instance Method Details
#build(settings = nil) ⇒ Object
20 21 22 23 |
# File 'lib/vessel/driver/registry.rb', line 20 def build(settings = nil) name = settings[:driver_name].to_sym @drivers.fetch(name.to_sym).new(settings) end |
#register(name, klass) ⇒ Object
16 17 18 |
# File 'lib/vessel/driver/registry.rb', line 16 def register(name, klass) @drivers[name.to_sym] = klass end |