Class: ActiveHarness::Costs::ProvidersProxy
- Inherits:
-
Object
- Object
- ActiveHarness::Costs::ProvidersProxy
- Defined in:
- lib/active_harness/costs.rb
Overview
Proxy object that exposes providers as methods and via [].
Instance Method Summary collapse
- #[](name) ⇒ Object
- #list ⇒ Object
- #method_missing(name, *args, &block) ⇒ Object
- #respond_to_missing?(name, include_private = false) ⇒ Boolean
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(name, *args, &block) ⇒ Object
106 107 108 109 110 111 112 113 |
# File 'lib/active_harness/costs.rb', line 106 def method_missing(name, *args, &block) provider = name.to_s if ActiveHarness::Costs.provider_names.include?(provider) ActiveHarness::Costs.for_provider(provider) else super end end |
Instance Method Details
#[](name) ⇒ Object
98 99 100 |
# File 'lib/active_harness/costs.rb', line 98 def [](name) ActiveHarness::Costs.for_provider(name.to_s) end |
#list ⇒ Object
102 103 104 |
# File 'lib/active_harness/costs.rb', line 102 def list ActiveHarness::Costs.provider_names end |
#respond_to_missing?(name, include_private = false) ⇒ Boolean
115 116 117 |
# File 'lib/active_harness/costs.rb', line 115 def respond_to_missing?(name, include_private = false) ActiveHarness::Costs.provider_names.include?(name.to_s) || super end |