Module: Codeine::Injectable
- Defined in:
- lib/codeine/injectable.rb
Instance Method Summary collapse
Instance Method Details
#codeine_inject(service, options = {}) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/codeine/injectable.rb', line 9 def codeine_inject(service, = {}) args = .delete(:args){[]} method_name = .delete(:method_name) || service define_method(method_name.to_sym) do |*args| cache = instance_variable_get("@codeine_#{service}") unless cache cache = self.class.nearest_codeine_container.get(service.to_sym, *args) instance_variable_set("@codeine_#{service}", cache) end cache end end |
#nearest_codeine_container ⇒ Object
5 6 7 |
# File 'lib/codeine/injectable.rb', line 5 def nearest_codeine_container Codeine::Utility.nearest_container(self) end |