Class: Awsrm::AlbListener

Inherits:
Resource show all
Defined in:
lib/awsrm/resources/alb_listener.rb

Constant Summary collapse

FILTER_MAP =
{
  id: 'listener_arn',
  arn: 'listener_arn',
  alb: ->(listener, value) { listener.load_balancer_arn == Awsrm::Alb.one(name: value).load_balancer_arn }
}.freeze

Constants inherited from Resource

Resource::CLIENTS, Resource::CLIENT_OPTIONS

Class Method Summary collapse

Methods inherited from Resource

check_one, one

Class Method Details

.all(params) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/awsrm/resources/alb_listener.rb', line 10

def all(params)
  listeners = elbv2_client.describe_listeners.map do |responce|
    responce.listeners
  end.flatten
  listeners.map do |listener|
    ret = params.all? do |key, value|
      raise UndefinedFilterParamError, key unless self::FILTER_MAP.key?(key)
      next self::FILTER_MAP[key].call(listener, value) if self::FILTER_MAP[key].is_a?(Proc)
      listener[self::FILTER_MAP[key]] == value
    end
    AlbListenerReader.new(listener) if ret
  end.compact
end

.filters(params) ⇒ Object



24
# File 'lib/awsrm/resources/alb_listener.rb', line 24

def filters(params) end