class AWSConfig::Profile
Attributes
entries[R]
name[R]
Public Class Methods
new(name, entries)
click to toggle source
# File lib/aws_config/profile.rb, line 5 def initialize(name, entries) @name = name.to_s @entries = entries end
Public Instance Methods
[](key)
click to toggle source
# File lib/aws_config/profile.rb, line 10 def [](key) key = key.to_s if entries.has_key?(key) entries[key] elsif source_profile? entries["source_profile"][key] else nil end end
[]=(key, value)
click to toggle source
# File lib/aws_config/profile.rb, line 21 def []=(key, value) key = key.to_s entries[key] = value end
config_hash()
click to toggle source
# File lib/aws_config/profile.rb, line 53 def config_hash { access_key_id: self["aws_access_key_id"], secret_access_key: self["aws_secret_access_key"], region: self["region"] } end
has_key?(key)
click to toggle source
# File lib/aws_config/profile.rb, line 26 def has_key?(key) key = key.to_s entries.has_key?(key) end
merge!(other)
click to toggle source
# File lib/aws_config/profile.rb, line 61 def merge!(other) @entries = Parser.from_hash(entries.merge(other.entries)) self end
method_missing(id, *args)
click to toggle source
Calls superclass method
# File lib/aws_config/profile.rb, line 39 def method_missing(id, *args) if has_key?(id) self[id] elsif source_profile? if entries["source_profile"].respond_to?(id) entries["source_profile"].send(id, args) else super end else super end end
respond_to?(id, include_all = false)
click to toggle source
Calls superclass method
# File lib/aws_config/profile.rb, line 35 def respond_to?(id, include_all = false) has_key?(id) || super end
source_profile?()
click to toggle source
# File lib/aws_config/profile.rb, line 31 def source_profile? entries.key?("source_profile") && entries["source_profile"].is_a?(Profile) end