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.
- .providers ⇒ Object
-
.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
40 41 42 |
# File 'lib/standard_id/provider_registry.rb', line 40 def all providers.each_pair.to_h end |
.get(name) ⇒ Class
Get provider by name
30 31 32 33 34 35 |
# File 'lib/standard_id/provider_registry.rb', line 30 def get(name) providers[name.to_s] || raise( ProviderNotFoundError, "Unknown provider: #{name}. Available providers: #{providers.keys.join(', ')}" ) end |
.providers ⇒ Object
11 12 13 |
# File 'lib/standard_id/provider_registry.rb', line 11 def providers @providers end |
.register(name, provider_class) ⇒ Object
Register a provider
18 19 20 21 22 23 24 |
# File 'lib/standard_id/provider_registry.rb', line 18 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
47 48 49 |
# File 'lib/standard_id/provider_registry.rb', line 47 def registered?(name) providers.key?(name.to_s) end |