Class: StandardId::ProviderRegistry
- Inherits:
-
Object
- Object
- StandardId::ProviderRegistry
- Defined in:
- lib/standard_id/provider_registry.rb
Defined Under Namespace
Classes: InvalidProviderError, ProviderNotFoundError
Class Method Summary collapse
-
.all ⇒ Hash
Get all registered providers.
-
.get(name) ⇒ Class
Get provider by name.
-
.register(name, provider_class) ⇒ Object
Register a provider.
-
.registered?(name) ⇒ Boolean
Check if provider is registered.
Class Method Details
.all ⇒ Hash
Get all registered providers
34 35 36 |
# File 'lib/standard_id/provider_registry.rb', line 34 def all @providers.dup end |
.get(name) ⇒ Class
Get provider by name
24 25 26 27 28 29 |
# File 'lib/standard_id/provider_registry.rb', line 24 def get(name) @providers[name.to_s] || raise( ProviderNotFoundError, "Unknown provider: #{name}. Available providers: #{@providers.keys.join(', ')}" ) end |
.register(name, provider_class) ⇒ Object
Register a provider
12 13 14 15 16 17 18 |
# File 'lib/standard_id/provider_registry.rb', line 12 def register(name, provider_class) validate_provider!(provider_class) @providers[name.to_s] = provider_class register_config_schema(provider_class) provider_class.setup if provider_class.respond_to?(:setup) provider_class end |
.registered?(name) ⇒ Boolean
Check if provider is registered
41 42 43 |
# File 'lib/standard_id/provider_registry.rb', line 41 def registered?(name) @providers.key?(name.to_s) end |