Sha256: 5e43782b6811182f1d9d882c4b2ff976f59f4ff7ad696bb30826849577716af6

Contents?: true

Size: 1020 Bytes

Versions: 26

Compression:

Stored size: 1020 Bytes

Contents

module Awspec::Type
  class ElasticacheCacheParameterGroup < Base
    def initialize(name)
      super
      @display_name = name
    end

    def resource_via_client
      return @resource_via_client if @resource_via_client

      parameters = {}
      res = elasticache_client.describe_cache_parameters({
                                                           cache_parameter_group_name: @display_name
                                                         })

      loop do
        res.parameters.each do |param|
          parameters[param.parameter_name] = param.parameter_value
        end
        (res.next_page? && res = res.next_page) || break
      end
      @resource_via_client ||= parameters
    end

    def id
      @id ||= @display_name unless resource_via_client.empty?
    end

    def method_missing(name)
      param_name = name.to_s.tr('_', '-')
      if resource_via_client.include?(param_name)
        resource_via_client[param_name].to_s
      else
        super
      end
    end
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
awspec-0.69.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.69.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.68.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.67.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.67.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.66.2 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.66.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.66.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.65.2 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.65.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.65.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.64.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.63.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.63.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.62.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.62.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.61.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.61.0 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.60.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.60.0 lib/awspec/type/elasticache_cache_parameter_group.rb