Sha256: e82c5e09363119bc0d7ee1f1115e20c243dba3f3176371a3dee513102e308911

Contents?: true

Size: 877 Bytes

Versions: 3

Compression:

Stored size: 877 Bytes

Contents

module Awspec::Type
  class ElasticacheCacheParameterGroup < Base
    attr_reader :parameters

    def initialize(name)
      super
      @parameters = {}
      res = @elasticache_client.describe_cache_parameters({
                                                            cache_parameter_group_name: 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

      @id = name unless @parameters.empty?
      @resource_via_client = @parameters
      @id
    end

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

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
awspec-0.26.2 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.26.1 lib/awspec/type/elasticache_cache_parameter_group.rb
awspec-0.26.0 lib/awspec/type/elasticache_cache_parameter_group.rb