Sha256: c448e63eb2fb0be5b67c7e4c5ab9a5197ff50b3ff3d56de45c56f51aac3176a3

Contents?: true

Size: 748 Bytes

Versions: 6

Compression:

Stored size: 748 Bytes

Contents

require 'fog/aws/models/elb/listener'
module Fog
  module AWS
    class ELB
      class Listeners < Fog::Collection

        model Fog::AWS::ELB::Listener

        attr_accessor :data, :load_balancer

        def all
          load(munged_data)
        end

        def get(lb_port)
          all.detect{|listener| listener.lb_port == lb_port}
        end

        private
        # Munge an array of ListernerDescription hashes like:
        # {'Listener' => listener, 'PolicyNames' => []}
        # to an array of listeners withi a PolicyNames key
        def munged_data
          data.map {|description|
            description['Listener'].merge('PolicyNames' => description['PolicyNames'])
          }
        end

      end
    end
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
fog4encbs-0.9.0.1 lib/fog/aws/models/elb/listeners.rb
fog4encbs-0.9.0 lib/fog/aws/models/elb/listeners.rb
fog-0.9.0 lib/fog/aws/models/elb/listeners.rb
fog-0.8.2 lib/fog/aws/models/elb/listeners.rb
fog-0.8.1 lib/fog/aws/models/elb/listeners.rb
fog-0.8.0 lib/fog/aws/models/elb/listeners.rb