-
Notifications
You must be signed in to change notification settings - Fork 17
/
CfnStreamProps.go
75 lines (72 loc) · 3.94 KB
/
CfnStreamProps.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package awskinesis
import (
"github.com/aws/aws-cdk-go/awscdk/v2"
)
// Properties for defining a `CfnStream`.
//
// Example:
// // The code below shows an example of how to instantiate this type.
// // The values are placeholders you should change.
// import "github.com/aws/aws-cdk-go/awscdk"
//
// cfnStreamProps := &CfnStreamProps{
// Name: jsii.String("name"),
// RetentionPeriodHours: jsii.Number(123),
// ShardCount: jsii.Number(123),
// StreamEncryption: &StreamEncryptionProperty{
// EncryptionType: jsii.String("encryptionType"),
// KeyId: jsii.String("keyId"),
// },
// StreamModeDetails: &StreamModeDetailsProperty{
// StreamMode: jsii.String("streamMode"),
// },
// Tags: []cfnTag{
// &cfnTag{
// Key: jsii.String("key"),
// Value: jsii.String("value"),
// },
// },
// }
//
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html
//
type CfnStreamProps struct {
// The name of the Kinesis stream.
//
// If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the stream name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html) .
//
// If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-name
//
Name *string `field:"optional" json:"name" yaml:"name"`
// The number of hours for the data records that are stored in shards to remain accessible.
//
// The default value is 24. For more information about the stream retention period, see [Changing the Data Retention Period](https://docs.aws.amazon.com/streams/latest/dev/kinesis-extended-retention.html) in the Amazon Kinesis Developer Guide.
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-retentionperiodhours
//
RetentionPeriodHours *float64 `field:"optional" json:"retentionPeriodHours" yaml:"retentionPeriodHours"`
// The number of shards that the stream uses.
//
// For greater provisioned throughput, increase the number of shards.
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-shardcount
//
ShardCount *float64 `field:"optional" json:"shardCount" yaml:"shardCount"`
// When specified, enables or updates server-side encryption using an AWS KMS key for a specified stream.
//
// Removing this property from your stack template and updating your stack disables encryption.
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-streamencryption
//
StreamEncryption interface{} `field:"optional" json:"streamEncryption" yaml:"streamEncryption"`
// Specifies the capacity mode to which you want to set your data stream.
//
// Currently, in Kinesis Data Streams, you can choose between an *on-demand* capacity mode and a *provisioned* capacity mode for your data streams.
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-streammodedetails
//
StreamModeDetails interface{} `field:"optional" json:"streamModeDetails" yaml:"streamModeDetails"`
// An arbitrary set of tags (key–value pairs) to associate with the Kinesis stream.
//
// For information about constraints for this property, see [Tag Restrictions](https://docs.aws.amazon.com/streams/latest/dev/tagging.html#tagging-restrictions) in the *Amazon Kinesis Developer Guide* .
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-tags
//
Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"`
}