Class: Sphragis::ProviderFactory
- Inherits:
-
Object
- Object
- Sphragis::ProviderFactory
- Defined in:
- lib/sphragis/provider_factory.rb
Defined Under Namespace
Classes: ProviderNotConfiguredError, ProviderNotFoundError
Class Method Summary collapse
-
.available_providers ⇒ Array<Symbol>
Get list of available (configured) providers.
-
.create(provider_name, config = {}) ⇒ Providers::BaseProvider
Create a signature provider instance.
-
.create_default ⇒ Providers::BaseProvider
Create default provider instance.
-
.default_provider ⇒ Symbol
Get default provider.
Class Method Details
.available_providers ⇒ Array<Symbol>
Get list of available (configured) providers
42 43 44 |
# File 'lib/sphragis/provider_factory.rb', line 42 def self.available_providers Sphragis.configuration.available_providers end |
.create(provider_name, config = {}) ⇒ Providers::BaseProvider
Create a signature provider instance
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/sphragis/provider_factory.rb', line 12 def self.create(provider_name, config = {}) provider_name = provider_name.to_sym config_obj = Sphragis.configuration case provider_name when :fortify raise ProviderNotConfiguredError, "Fortify is not configured" unless config_obj.fortify_configured? require_relative "providers/fortify_provider" Providers::FortifyProvider.new(config) when :harica raise ProviderNotConfiguredError, "Harica is not configured" unless config_obj.harica_configured? require_relative "providers/harica_provider" Providers::HaricaProvider.new(config.empty? ? harica_config : config) when :itsme raise ProviderNotConfiguredError, "Itsme is not configured" unless config_obj.itsme_configured? require_relative "providers/itsme_provider" Providers::ItsmeProvider.new(config.empty? ? itsme_config : config) else raise ProviderNotFoundError, "Unknown provider: #{provider_name}. Available: #{available_providers.join(', ')}" end end |
.create_default ⇒ Providers::BaseProvider
Create default provider instance
54 55 56 |
# File 'lib/sphragis/provider_factory.rb', line 54 def self.create_default create(default_provider) end |
.default_provider ⇒ Symbol
Get default provider
48 49 50 |
# File 'lib/sphragis/provider_factory.rb', line 48 def self.default_provider Sphragis.configuration.default_provider end |