Class: APIGatewayDSL::Integration::Lambda

Inherits:
APIGatewayDSL::Integration show all
Defined in:
lib/api_gateway_dsl/integration/lambda.rb

Instance Attribute Summary collapse

Attributes inherited from APIGatewayDSL::Integration

#context, #mappings, #templates

Instance Method Summary collapse

Constructor Details

#initialize(_, lambda_arn, **options, &block) ⇒ Lambda

Returns a new instance of Lambda.



7
8
9
10
11
12
13
# File 'lib/api_gateway_dsl/integration/lambda.rb', line 7

def initialize(_, lambda_arn, **options, &block)
  super

  @lambda_arn = lambda_arn

  DSL::IntegrationNode.new(self, &block)
end

Instance Attribute Details

#methodObject (readonly)

Returns the value of attribute method.



5
6
7
# File 'lib/api_gateway_dsl/integration/lambda.rb', line 5

def method
  @method
end

#urlObject (readonly)

Returns the value of attribute url.



5
6
7
# File 'lib/api_gateway_dsl/integration/lambda.rb', line 5

def url
  @url
end

Instance Method Details

#as_jsonObject



15
16
17
18
19
20
21
22
23
# File 'lib/api_gateway_dsl/integration/lambda.rb', line 15

def as_json
  super.tap do |result|
    result[:type]        = 'aws'
    result[:httpMethod]  = 'POST'
    result[:uri]         = uri

    result[:credentials] = @credentials if @credentials
  end
end