Module: Datadog::Contrib::Configurable::InstanceMethods
- Defined in:
- lib/ddtrace/contrib/configurable.rb
Overview
Configurable instance behavior for integrations
Instance Method Summary collapse
- #configuration(key = :default) ⇒ Object
- #configurations ⇒ Object
- #configure(key, options = {}, &block) ⇒ Object
- #default_configuration ⇒ Object
- #reset_configuration! ⇒ Object
Instance Method Details
#configuration(key = :default) ⇒ Object
23 24 25 |
# File 'lib/ddtrace/contrib/configurable.rb', line 23 def configuration(key = :default) configurations[resolve_configuration_key(key)] end |
#configurations ⇒ Object
27 28 29 30 31 |
# File 'lib/ddtrace/contrib/configurable.rb', line 27 def configurations @configurations ||= Hash.new { default_configuration }.tap do |configs| configs[:default] = default_configuration end end |
#configure(key, options = {}, &block) ⇒ Object
33 34 35 36 37 38 39 40 |
# File 'lib/ddtrace/contrib/configurable.rb', line 33 def configure(key, = {}, &block) key = resolver.resolve(key || :default) configurations[key].tap do |settings| settings.configure(, &block) configurations[key] = settings end end |
#default_configuration ⇒ Object
14 15 16 |
# File 'lib/ddtrace/contrib/configurable.rb', line 14 def default_configuration Configuration::Settings.new end |
#reset_configuration! ⇒ Object
18 19 20 21 |
# File 'lib/ddtrace/contrib/configurable.rb', line 18 def reset_configuration! @configurations = nil @resolver = nil end |