class DependencyInjection::Container
Attributes
definitions[R]
parameters[R]
Public Class Methods
new()
click to toggle source
# File lib/dependency_injection/container.rb, line 9 def initialize @definitions = {} @parameters = {} end
Public Instance Methods
add_parameter(name, value)
click to toggle source
# File lib/dependency_injection/container.rb, line 14 def add_parameter(name, value) @parameters[name] = value end
find(name)
click to toggle source
# File lib/dependency_injection/container.rb, line 18 def find(name) @definitions[name] end
get(name)
click to toggle source
# File lib/dependency_injection/container.rb, line 22 def get(name) if (definition = self.find(name)) definition.object end end
register(name, klass_name, lazy=false)
click to toggle source
# File lib/dependency_injection/container.rb, line 28 def register(name, klass_name, lazy=false) definition = lazy ? LazyDefinition.new(klass_name, self) : Definition.new(klass_name, self) @definitions[name] = definition end
register_alias(name, alias_definition_name)
click to toggle source
# File lib/dependency_injection/container.rb, line 33 def register_alias(name, alias_definition_name) @definitions[name] = AliasDefinition.new(alias_definition_name, self) end