Class: FastExists::Backends::Registry
- Inherits:
-
Object
- Object
- FastExists::Backends::Registry
- Defined in:
- lib/fast_exists/backends/registry.rb
Instance Method Summary collapse
- #fetch(name, options = {}) ⇒ Object
-
#initialize ⇒ Registry
constructor
A new instance of Registry.
- #register(name, klass) ⇒ Object
- #registered?(name) ⇒ Boolean
Constructor Details
#initialize ⇒ Registry
Returns a new instance of Registry.
6 7 8 9 |
# File 'lib/fast_exists/backends/registry.rb', line 6 def initialize @backends = {} register_default_backends end |
Instance Method Details
#fetch(name, options = {}) ⇒ Object
15 16 17 18 19 20 21 |
# File 'lib/fast_exists/backends/registry.rb', line 15 def fetch(name, = {}) backend_name = name.to_sym klass = @backends[backend_name] raise UnsupportedBackendError, "Backend '#{name}' is not registered" unless klass klass.new() end |
#register(name, klass) ⇒ Object
11 12 13 |
# File 'lib/fast_exists/backends/registry.rb', line 11 def register(name, klass) @backends[name.to_sym] = klass end |
#registered?(name) ⇒ Boolean
23 24 25 |
# File 'lib/fast_exists/backends/registry.rb', line 23 def registered?(name) @backends.key?(name.to_sym) end |