Class: Kelbim::DSL::EC2::LoadBalancer::Listeners

Inherits:
Object
  • Object
show all
Includes:
Checker
Defined in:
lib/kelbim/dsl/listener.rb,
lib/kelbim/dsl/listeners.rb

Defined Under Namespace

Classes: Listener

Instance Method Summary collapse

Constructor Details

#initialize(load_balancer, &block) ⇒ Listeners

Returns a new instance of Listeners.



12
13
14
15
16
# File 'lib/kelbim/dsl/listeners.rb', line 12

def initialize(load_balancer, &block)
  @error_identifier = "LoadBalancer `#{load_balancer}`"
  @result = {}
  instance_eval(&block)
end

Instance Method Details

#resultObject



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/kelbim/dsl/listeners.rb', line 18

def result
  required(:listener, @result)

  @result.map do |protocol_ports, listener|
    protocol, port, instance_protocol, instance_port = protocol_ports.first.flatten

    OpenStruct.new({
      :protocol           => protocol,
      :port               => port,
      :instance_protocol  => instance_protocol,
      :instance_port      => instance_port,
      :server_certificate => listener.server_certificate,
      :policies           => listener.policies,
    })
  end
end