Class: AWSCDK::AppSync::HandlerConfig

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
app_sync/handler_config.rb

Overview

Handler configuration construct for onPublish and onSubscribe.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data_source: nil, direct: nil, lambda_invoke_type: nil) ⇒ HandlerConfig

Returns a new instance of HandlerConfig.

Parameters:



10
11
12
13
14
15
16
17
# File 'app_sync/handler_config.rb', line 10

def initialize(data_source: nil, direct: nil, lambda_invoke_type: nil)
  @data_source = data_source
  Jsii::Type.check_type(@data_source, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3luYy5BcHBTeW5jQmFja2VkRGF0YVNvdXJjZSJ9")), "dataSource") unless @data_source.nil?
  @direct = direct
  Jsii::Type.check_type(@direct, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "direct") unless @direct.nil?
  @lambda_invoke_type = lambda_invoke_type
  Jsii::Type.check_type(@lambda_invoke_type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3luYy5MYW1iZGFJbnZva2VUeXBlIn0=")), "lambdaInvokeType") unless @lambda_invoke_type.nil?
end

Instance Attribute Details

#data_sourceAWSCDK::AppSync::AppSyncBackedDataSource? (readonly)

Note:

Default: - no data source is used

The Event Handler data source.



23
24
25
# File 'app_sync/handler_config.rb', line 23

def data_source
  @data_source
end

#directBoolean? (readonly)

Note:

Default: - false

If the Event Handler should invoke the data source directly.

Returns:

  • (Boolean, nil)


28
29
30
# File 'app_sync/handler_config.rb', line 28

def direct
  @direct
end

#lambda_invoke_typeAWSCDK::AppSync::LambdaInvokeType? (readonly)

Note:

Default: - LambdaInvokeType.REQUEST_RESPONSE

The Lambda invocation type for direct integrations.



33
34
35
# File 'app_sync/handler_config.rb', line 33

def lambda_invoke_type
  @lambda_invoke_type
end

Class Method Details

.jsii_propertiesObject



35
36
37
38
39
40
41
# File 'app_sync/handler_config.rb', line 35

def self.jsii_properties
  {
    :data_source => "dataSource",
    :direct => "direct",
    :lambda_invoke_type => "lambdaInvokeType",
  }
end

Instance Method Details

#to_jsiiObject



43
44
45
46
47
48
49
50
51
# File 'app_sync/handler_config.rb', line 43

def to_jsii
  result = {}
  result.merge!({
    "dataSource" => @data_source,
    "direct" => @direct,
    "lambdaInvokeType" => @lambda_invoke_type,
  })
  result.compact
end