class BBC::Cosmos::Tools::CosmosConfiguration

Attributes

config[RW]

Public Class Methods

new(config) click to toggle source
# File lib/bbc/cosmos/tools/cosmos_configuration.rb, line 10
def initialize(config)
  @config = config
end

Public Instance Methods

component(id) click to toggle source
# File lib/bbc/cosmos/tools/cosmos_configuration.rb, line 18
def component(id)
  config.components[id].tap do |o|
    fail("Invalid component id: #{id}") if o.nil?
  end
end
component_keys() click to toggle source
# File lib/bbc/cosmos/tools/cosmos_configuration.rb, line 14
def component_keys
  config.components.keys
end
cosmos_component(id) click to toggle source
# File lib/bbc/cosmos/tools/cosmos_configuration.rb, line 24
def cosmos_component(id)
  component(id).reduce([]) do |object, (key, value)|
    object.tap do |o|
      o << {
        :value  => secure_key?(value) ? value["value"] : value,
        :key    => key,
        :secure => secure_key?(value)
      }
    end
  end
end

Private Instance Methods

secure_key?(value) click to toggle source
# File lib/bbc/cosmos/tools/cosmos_configuration.rb, line 38
def secure_key?(value)
  value.is_a?(Hash) && value["secure"]
end