/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents the output for DescribeStreamSummary See
* Also:
AWS
* API Reference
The name of the stream being described.
*/ inline const Aws::String& GetStreamName() const{ return m_streamName; } /** *The name of the stream being described.
*/ inline bool StreamNameHasBeenSet() const { return m_streamNameHasBeenSet; } /** *The name of the stream being described.
*/ inline void SetStreamName(const Aws::String& value) { m_streamNameHasBeenSet = true; m_streamName = value; } /** *The name of the stream being described.
*/ inline void SetStreamName(Aws::String&& value) { m_streamNameHasBeenSet = true; m_streamName = std::move(value); } /** *The name of the stream being described.
*/ inline void SetStreamName(const char* value) { m_streamNameHasBeenSet = true; m_streamName.assign(value); } /** *The name of the stream being described.
*/ inline StreamDescriptionSummary& WithStreamName(const Aws::String& value) { SetStreamName(value); return *this;} /** *The name of the stream being described.
*/ inline StreamDescriptionSummary& WithStreamName(Aws::String&& value) { SetStreamName(std::move(value)); return *this;} /** *The name of the stream being described.
*/ inline StreamDescriptionSummary& WithStreamName(const char* value) { SetStreamName(value); return *this;} /** *The Amazon Resource Name (ARN) for the stream being described.
*/ inline const Aws::String& GetStreamARN() const{ return m_streamARN; } /** *The Amazon Resource Name (ARN) for the stream being described.
*/ inline bool StreamARNHasBeenSet() const { return m_streamARNHasBeenSet; } /** *The Amazon Resource Name (ARN) for the stream being described.
*/ inline void SetStreamARN(const Aws::String& value) { m_streamARNHasBeenSet = true; m_streamARN = value; } /** *The Amazon Resource Name (ARN) for the stream being described.
*/ inline void SetStreamARN(Aws::String&& value) { m_streamARNHasBeenSet = true; m_streamARN = std::move(value); } /** *The Amazon Resource Name (ARN) for the stream being described.
*/ inline void SetStreamARN(const char* value) { m_streamARNHasBeenSet = true; m_streamARN.assign(value); } /** *The Amazon Resource Name (ARN) for the stream being described.
*/ inline StreamDescriptionSummary& WithStreamARN(const Aws::String& value) { SetStreamARN(value); return *this;} /** *The Amazon Resource Name (ARN) for the stream being described.
*/ inline StreamDescriptionSummary& WithStreamARN(Aws::String&& value) { SetStreamARN(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) for the stream being described.
*/ inline StreamDescriptionSummary& WithStreamARN(const char* value) { SetStreamARN(value); return *this;} /** *The current status of the stream being described. The stream status is one of * the following states:
CREATING
- The stream is
* being created. Kinesis Data Streams immediately returns and sets
* StreamStatus
to CREATING
.
* DELETING
- The stream is being deleted. The specified stream is in
* the DELETING
state until Kinesis Data Streams completes the
* deletion.
ACTIVE
- The stream exists and is
* ready for read and write operations or deletion. You should perform read and
* write operations only on an ACTIVE
stream.
* UPDATING
- Shards in the stream are being merged or split. Read and
* write operations continue to work while the stream is in the
* UPDATING
state.
The current status of the stream being described. The stream status is one of * the following states:
CREATING
- The stream is
* being created. Kinesis Data Streams immediately returns and sets
* StreamStatus
to CREATING
.
* DELETING
- The stream is being deleted. The specified stream is in
* the DELETING
state until Kinesis Data Streams completes the
* deletion.
ACTIVE
- The stream exists and is
* ready for read and write operations or deletion. You should perform read and
* write operations only on an ACTIVE
stream.
* UPDATING
- Shards in the stream are being merged or split. Read and
* write operations continue to work while the stream is in the
* UPDATING
state.
The current status of the stream being described. The stream status is one of * the following states:
CREATING
- The stream is
* being created. Kinesis Data Streams immediately returns and sets
* StreamStatus
to CREATING
.
* DELETING
- The stream is being deleted. The specified stream is in
* the DELETING
state until Kinesis Data Streams completes the
* deletion.
ACTIVE
- The stream exists and is
* ready for read and write operations or deletion. You should perform read and
* write operations only on an ACTIVE
stream.
* UPDATING
- Shards in the stream are being merged or split. Read and
* write operations continue to work while the stream is in the
* UPDATING
state.
The current status of the stream being described. The stream status is one of * the following states:
CREATING
- The stream is
* being created. Kinesis Data Streams immediately returns and sets
* StreamStatus
to CREATING
.
* DELETING
- The stream is being deleted. The specified stream is in
* the DELETING
state until Kinesis Data Streams completes the
* deletion.
ACTIVE
- The stream exists and is
* ready for read and write operations or deletion. You should perform read and
* write operations only on an ACTIVE
stream.
* UPDATING
- Shards in the stream are being merged or split. Read and
* write operations continue to work while the stream is in the
* UPDATING
state.
The current status of the stream being described. The stream status is one of * the following states:
CREATING
- The stream is
* being created. Kinesis Data Streams immediately returns and sets
* StreamStatus
to CREATING
.
* DELETING
- The stream is being deleted. The specified stream is in
* the DELETING
state until Kinesis Data Streams completes the
* deletion.
ACTIVE
- The stream exists and is
* ready for read and write operations or deletion. You should perform read and
* write operations only on an ACTIVE
stream.
* UPDATING
- Shards in the stream are being merged or split. Read and
* write operations continue to work while the stream is in the
* UPDATING
state.
The current status of the stream being described. The stream status is one of * the following states:
CREATING
- The stream is
* being created. Kinesis Data Streams immediately returns and sets
* StreamStatus
to CREATING
.
* DELETING
- The stream is being deleted. The specified stream is in
* the DELETING
state until Kinesis Data Streams completes the
* deletion.
ACTIVE
- The stream exists and is
* ready for read and write operations or deletion. You should perform read and
* write operations only on an ACTIVE
stream.
* UPDATING
- Shards in the stream are being merged or split. Read and
* write operations continue to work while the stream is in the
* UPDATING
state.
The current retention period, in hours.
*/ inline int GetRetentionPeriodHours() const{ return m_retentionPeriodHours; } /** *The current retention period, in hours.
*/ inline bool RetentionPeriodHoursHasBeenSet() const { return m_retentionPeriodHoursHasBeenSet; } /** *The current retention period, in hours.
*/ inline void SetRetentionPeriodHours(int value) { m_retentionPeriodHoursHasBeenSet = true; m_retentionPeriodHours = value; } /** *The current retention period, in hours.
*/ inline StreamDescriptionSummary& WithRetentionPeriodHours(int value) { SetRetentionPeriodHours(value); return *this;} /** *The approximate time that the stream was created.
*/ inline const Aws::Utils::DateTime& GetStreamCreationTimestamp() const{ return m_streamCreationTimestamp; } /** *The approximate time that the stream was created.
*/ inline bool StreamCreationTimestampHasBeenSet() const { return m_streamCreationTimestampHasBeenSet; } /** *The approximate time that the stream was created.
*/ inline void SetStreamCreationTimestamp(const Aws::Utils::DateTime& value) { m_streamCreationTimestampHasBeenSet = true; m_streamCreationTimestamp = value; } /** *The approximate time that the stream was created.
*/ inline void SetStreamCreationTimestamp(Aws::Utils::DateTime&& value) { m_streamCreationTimestampHasBeenSet = true; m_streamCreationTimestamp = std::move(value); } /** *The approximate time that the stream was created.
*/ inline StreamDescriptionSummary& WithStreamCreationTimestamp(const Aws::Utils::DateTime& value) { SetStreamCreationTimestamp(value); return *this;} /** *The approximate time that the stream was created.
*/ inline StreamDescriptionSummary& WithStreamCreationTimestamp(Aws::Utils::DateTime&& value) { SetStreamCreationTimestamp(std::move(value)); return *this;} /** *Represents the current enhanced monitoring settings of the stream.
*/ inline const Aws::VectorRepresents the current enhanced monitoring settings of the stream.
*/ inline bool EnhancedMonitoringHasBeenSet() const { return m_enhancedMonitoringHasBeenSet; } /** *Represents the current enhanced monitoring settings of the stream.
*/ inline void SetEnhancedMonitoring(const Aws::VectorRepresents the current enhanced monitoring settings of the stream.
*/ inline void SetEnhancedMonitoring(Aws::VectorRepresents the current enhanced monitoring settings of the stream.
*/ inline StreamDescriptionSummary& WithEnhancedMonitoring(const Aws::VectorRepresents the current enhanced monitoring settings of the stream.
*/ inline StreamDescriptionSummary& WithEnhancedMonitoring(Aws::VectorRepresents the current enhanced monitoring settings of the stream.
*/ inline StreamDescriptionSummary& AddEnhancedMonitoring(const EnhancedMetrics& value) { m_enhancedMonitoringHasBeenSet = true; m_enhancedMonitoring.push_back(value); return *this; } /** *Represents the current enhanced monitoring settings of the stream.
*/ inline StreamDescriptionSummary& AddEnhancedMonitoring(EnhancedMetrics&& value) { m_enhancedMonitoringHasBeenSet = true; m_enhancedMonitoring.push_back(std::move(value)); return *this; } /** *The encryption type used. This value is one of the following:
KMS
NONE
The encryption type used. This value is one of the following:
KMS
NONE
The encryption type used. This value is one of the following:
KMS
NONE
The encryption type used. This value is one of the following:
KMS
NONE
The encryption type used. This value is one of the following:
KMS
NONE
The encryption type used. This value is one of the following:
KMS
NONE
The GUID for the customer-managed AWS KMS key to use for encryption. This
* value can be a globally unique identifier, a fully specified ARN to either an
* alias or a key, or an alias name prefixed by "alias/".You can also use a master
* key owned by Kinesis Data Streams by specifying the alias
* aws/kinesis
.
Key ARN example:
* arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
*
Alias ARN example:
* arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
* 12345678-1234-1234-1234-123456789012
Alias name
* example: alias/MyAliasName
Master key owned by
* Kinesis Data Streams: alias/aws/kinesis
The GUID for the customer-managed AWS KMS key to use for encryption. This
* value can be a globally unique identifier, a fully specified ARN to either an
* alias or a key, or an alias name prefixed by "alias/".You can also use a master
* key owned by Kinesis Data Streams by specifying the alias
* aws/kinesis
.
Key ARN example:
* arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
*
Alias ARN example:
* arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
* 12345678-1234-1234-1234-123456789012
Alias name
* example: alias/MyAliasName
Master key owned by
* Kinesis Data Streams: alias/aws/kinesis
The GUID for the customer-managed AWS KMS key to use for encryption. This
* value can be a globally unique identifier, a fully specified ARN to either an
* alias or a key, or an alias name prefixed by "alias/".You can also use a master
* key owned by Kinesis Data Streams by specifying the alias
* aws/kinesis
.
Key ARN example:
* arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
*
Alias ARN example:
* arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
* 12345678-1234-1234-1234-123456789012
Alias name
* example: alias/MyAliasName
Master key owned by
* Kinesis Data Streams: alias/aws/kinesis
The GUID for the customer-managed AWS KMS key to use for encryption. This
* value can be a globally unique identifier, a fully specified ARN to either an
* alias or a key, or an alias name prefixed by "alias/".You can also use a master
* key owned by Kinesis Data Streams by specifying the alias
* aws/kinesis
.
Key ARN example:
* arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
*
Alias ARN example:
* arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
* 12345678-1234-1234-1234-123456789012
Alias name
* example: alias/MyAliasName
Master key owned by
* Kinesis Data Streams: alias/aws/kinesis
The GUID for the customer-managed AWS KMS key to use for encryption. This
* value can be a globally unique identifier, a fully specified ARN to either an
* alias or a key, or an alias name prefixed by "alias/".You can also use a master
* key owned by Kinesis Data Streams by specifying the alias
* aws/kinesis
.
Key ARN example:
* arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
*
Alias ARN example:
* arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
* 12345678-1234-1234-1234-123456789012
Alias name
* example: alias/MyAliasName
Master key owned by
* Kinesis Data Streams: alias/aws/kinesis
The GUID for the customer-managed AWS KMS key to use for encryption. This
* value can be a globally unique identifier, a fully specified ARN to either an
* alias or a key, or an alias name prefixed by "alias/".You can also use a master
* key owned by Kinesis Data Streams by specifying the alias
* aws/kinesis
.
Key ARN example:
* arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
*
Alias ARN example:
* arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
* 12345678-1234-1234-1234-123456789012
Alias name
* example: alias/MyAliasName
Master key owned by
* Kinesis Data Streams: alias/aws/kinesis
The GUID for the customer-managed AWS KMS key to use for encryption. This
* value can be a globally unique identifier, a fully specified ARN to either an
* alias or a key, or an alias name prefixed by "alias/".You can also use a master
* key owned by Kinesis Data Streams by specifying the alias
* aws/kinesis
.
Key ARN example:
* arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
*
Alias ARN example:
* arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
* 12345678-1234-1234-1234-123456789012
Alias name
* example: alias/MyAliasName
Master key owned by
* Kinesis Data Streams: alias/aws/kinesis
The GUID for the customer-managed AWS KMS key to use for encryption. This
* value can be a globally unique identifier, a fully specified ARN to either an
* alias or a key, or an alias name prefixed by "alias/".You can also use a master
* key owned by Kinesis Data Streams by specifying the alias
* aws/kinesis
.
Key ARN example:
* arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
*
Alias ARN example:
* arn:aws:kms:us-east-1:123456789012:alias/MyAliasName
Globally unique key ID example:
* 12345678-1234-1234-1234-123456789012
Alias name
* example: alias/MyAliasName
Master key owned by
* Kinesis Data Streams: alias/aws/kinesis
The number of open shards in the stream.
*/ inline int GetOpenShardCount() const{ return m_openShardCount; } /** *The number of open shards in the stream.
*/ inline bool OpenShardCountHasBeenSet() const { return m_openShardCountHasBeenSet; } /** *The number of open shards in the stream.
*/ inline void SetOpenShardCount(int value) { m_openShardCountHasBeenSet = true; m_openShardCount = value; } /** *The number of open shards in the stream.
*/ inline StreamDescriptionSummary& WithOpenShardCount(int value) { SetOpenShardCount(value); return *this;} /** *The number of enhanced fan-out consumers registered with the stream.
*/ inline int GetConsumerCount() const{ return m_consumerCount; } /** *The number of enhanced fan-out consumers registered with the stream.
*/ inline bool ConsumerCountHasBeenSet() const { return m_consumerCountHasBeenSet; } /** *The number of enhanced fan-out consumers registered with the stream.
*/ inline void SetConsumerCount(int value) { m_consumerCountHasBeenSet = true; m_consumerCount = value; } /** *The number of enhanced fan-out consumers registered with the stream.
*/ inline StreamDescriptionSummary& WithConsumerCount(int value) { SetConsumerCount(value); return *this;} private: Aws::String m_streamName; bool m_streamNameHasBeenSet; Aws::String m_streamARN; bool m_streamARNHasBeenSet; StreamStatus m_streamStatus; bool m_streamStatusHasBeenSet; int m_retentionPeriodHours; bool m_retentionPeriodHoursHasBeenSet; Aws::Utils::DateTime m_streamCreationTimestamp; bool m_streamCreationTimestampHasBeenSet; Aws::Vector