Class: AWSCDK::Lex::CfnBot::GrammarSlotTypeSourceProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
lex/cfn_bot.rb

Overview

Describes the Amazon S3 bucket name and location for the grammar that is the source for the slot type.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(s3_bucket_name:, s3_object_key:, kms_key_arn: nil) ⇒ GrammarSlotTypeSourceProperty

Returns a new instance of GrammarSlotTypeSourceProperty.

Parameters:

  • s3_bucket_name (String)

    The name of the Amazon S3 bucket that contains the grammar source.

  • s3_object_key (String)

    The path to the grammar in the Amazon S3 bucket.

  • kms_key_arn (String, nil) (defaults to: nil)

    The AWS key required to decrypt the contents of the grammar, if any.



2995
2996
2997
2998
2999
3000
3001
3002
# File 'lex/cfn_bot.rb', line 2995

def initialize(s3_bucket_name:, s3_object_key:, kms_key_arn: nil)
  @s3_bucket_name = s3_bucket_name
  Jsii::Type.check_type(@s3_bucket_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "s3BucketName")
  @s3_object_key = s3_object_key
  Jsii::Type.check_type(@s3_object_key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "s3ObjectKey")
  @kms_key_arn = kms_key_arn
  Jsii::Type.check_type(@kms_key_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyArn") unless @kms_key_arn.nil?
end

Instance Attribute Details

#kms_key_arnString? (readonly)

The AWS key required to decrypt the contents of the grammar, if any.



3018
3019
3020
# File 'lex/cfn_bot.rb', line 3018

def kms_key_arn
  @kms_key_arn
end

#s3_bucket_nameString (readonly)

The name of the Amazon S3 bucket that contains the grammar source.



3008
3009
3010
# File 'lex/cfn_bot.rb', line 3008

def s3_bucket_name
  @s3_bucket_name
end

#s3_object_keyString (readonly)

The path to the grammar in the Amazon S3 bucket.



3013
3014
3015
# File 'lex/cfn_bot.rb', line 3013

def s3_object_key
  @s3_object_key
end

Class Method Details

.jsii_propertiesObject



3020
3021
3022
3023
3024
3025
3026
# File 'lex/cfn_bot.rb', line 3020

def self.jsii_properties
  {
    :s3_bucket_name => "s3BucketName",
    :s3_object_key => "s3ObjectKey",
    :kms_key_arn => "kmsKeyArn",
  }
end

Instance Method Details

#to_jsiiObject



3028
3029
3030
3031
3032
3033
3034
3035
3036
# File 'lex/cfn_bot.rb', line 3028

def to_jsii
  result = {}
  result.merge!({
    "s3BucketName" => @s3_bucket_name,
    "s3ObjectKey" => @s3_object_key,
    "kmsKeyArn" => @kms_key_arn,
  })
  result.compact
end