Class: AWSCDK::KinesisFirehose::DeliveryStreamProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
kinesis_firehose/delivery_stream_props.rb

Overview

Properties for a new delivery stream.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(destination:, delivery_stream_name: nil, encryption: nil, role: nil, source: nil) ⇒ DeliveryStreamProps

Returns a new instance of DeliveryStreamProps.

Parameters:



12
13
14
15
16
17
18
19
20
21
22
23
# File 'kinesis_firehose/delivery_stream_props.rb', line 12

def initialize(destination:, delivery_stream_name: nil, encryption: nil, role: nil, source: nil)
  @destination = destination
  Jsii::Type.check_type(@destination, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa2luZXNpc2ZpcmVob3NlLklEZXN0aW5hdGlvbiJ9")), "destination")
  @delivery_stream_name = delivery_stream_name
  Jsii::Type.check_type(@delivery_stream_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "deliveryStreamName") unless @delivery_stream_name.nil?
  @encryption = encryption
  Jsii::Type.check_type(@encryption, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa2luZXNpc2ZpcmVob3NlLlN0cmVhbUVuY3J5cHRpb24ifQ==")), "encryption") unless @encryption.nil?
  @role = role
  Jsii::Type.check_type(@role, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklSb2xlIn0=")), "role") unless @role.nil?
  @source = source
  Jsii::Type.check_type(@source, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa2luZXNpc2ZpcmVob3NlLklTb3VyY2UifQ==")), "source") unless @source.nil?
end

Instance Attribute Details

#delivery_stream_nameString? (readonly)

Note:

Default: - a name is generated by CloudFormation.

A name for the delivery stream.

Returns:

  • (String, nil)


33
34
35
# File 'kinesis_firehose/delivery_stream_props.rb', line 33

def delivery_stream_name
  @delivery_stream_name
end

#destinationAWSCDK::KinesisFirehose::IDestination (readonly)

The destination that this delivery stream will deliver data to.



28
29
30
# File 'kinesis_firehose/delivery_stream_props.rb', line 28

def destination
  @destination
end

#encryptionAWSCDK::KinesisFirehose::StreamEncryption? (readonly)

Note:

Default: StreamEncryption.unencrypted()

Indicates the type of customer master key (CMK) to use for server-side encryption, if any.



38
39
40
# File 'kinesis_firehose/delivery_stream_props.rb', line 38

def encryption
  @encryption
end

#roleAWSCDK::IAM::IRole? (readonly)

Note:

Default: - a role will be created with default permissions.

The IAM role associated with this delivery stream.

Assumed by Amazon Data Firehose to read from sources and encrypt data server-side.

Returns:



45
46
47
# File 'kinesis_firehose/delivery_stream_props.rb', line 45

def role
  @role
end

#sourceAWSCDK::KinesisFirehose::ISource? (readonly)

Note:

Default: - data must be written to the delivery stream via a direct put.

The Kinesis data stream to use as a source for this delivery stream.



50
51
52
# File 'kinesis_firehose/delivery_stream_props.rb', line 50

def source
  @source
end

Class Method Details

.jsii_propertiesObject



52
53
54
55
56
57
58
59
60
# File 'kinesis_firehose/delivery_stream_props.rb', line 52

def self.jsii_properties
  {
    :destination => "destination",
    :delivery_stream_name => "deliveryStreamName",
    :encryption => "encryption",
    :role => "role",
    :source => "source",
  }
end

Instance Method Details

#to_jsiiObject



62
63
64
65
66
67
68
69
70
71
72
# File 'kinesis_firehose/delivery_stream_props.rb', line 62

def to_jsii
  result = {}
  result.merge!({
    "destination" => @destination,
    "deliveryStreamName" => @delivery_stream_name,
    "encryption" => @encryption,
    "role" => @role,
    "source" => @source,
  })
  result.compact
end