Class: SimplyGenius::Atmos::ProviderFactory
- Inherits:
-
Object
- Object
- SimplyGenius::Atmos::ProviderFactory
- Includes:
- GemLogger::LoggerSupport
- Defined in:
- lib/simplygenius/atmos/provider_factory.rb
Class Method Summary collapse
Class Method Details
.get(name) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/simplygenius/atmos/provider_factory.rb', line 9 def self.get(name) @providers ||= {} provider = @providers[name] ||= begin logger.debug("Loading provider: #{name}") require "simplygenius/atmos/providers/#{name}/provider" provider_class = "SimplyGenius::Atmos::Providers::#{name.camelize}::Provider".constantize logger.debug("Loaded provider #{provider_class}") provider_class.new(name) end return provider end |