class Kozo::DSL
Attributes
configuration[R]
Public Class Methods
new(configuration)
click to toggle source
# File lib/kozo/dsl.rb, line 7 def initialize(configuration) @configuration = configuration end
Public Instance Methods
backend(type) { |backend| ... }
click to toggle source
# File lib/kozo/dsl.rb, line 15 def backend(type) backend = resolve(:backend, type) yield backend if block_given? configuration.backend = backend end
kozo() { || ... }
click to toggle source
# File lib/kozo/dsl.rb, line 11 def kozo(&_block) yield end
provider(type) { |provider| ... }
click to toggle source
# File lib/kozo/dsl.rb, line 23 def provider(type) provider = resolve(:provider, type) yield provider if block_given? configuration.providers[provider.class.name] = provider end
resource(type, name) { |resource| ... }
click to toggle source
# File lib/kozo/dsl.rb, line 31 def resource(type, name) resource = resolve(:resource, type, name) resource.provider = configuration.providers[resource.class.provider] Kozo.logger.fatal "Provider #{resource.class.provider}" unless resource.provider yield resource if block_given? configuration.resources[resource.class.name] = resource end
Private Instance Methods
resolve(resource, type, name = nil)
click to toggle source
# File lib/kozo/dsl.rb, line 44 def resolve(resource, type, name = nil) Kozo.logger.debug "Initializing #{resource} #{type} #{name}" Kozo.container.resolve("#{resource}.#{type}") rescue Container::DependencyNotRegistered Kozo.logger.fatal "Unknown #{resource} type: #{type}" end