/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SecurityHub { namespace Model { /** *

The current DynamoDB Streams configuration for the table.

See * Also:

AWS * API Reference

*/ class AwsDynamoDbTableStreamSpecification { public: AWS_SECURITYHUB_API AwsDynamoDbTableStreamSpecification(); AWS_SECURITYHUB_API AwsDynamoDbTableStreamSpecification(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsDynamoDbTableStreamSpecification& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Indicates whether DynamoDB Streams is enabled on the table.

*/ inline bool GetStreamEnabled() const{ return m_streamEnabled; } /** *

Indicates whether DynamoDB Streams is enabled on the table.

*/ inline bool StreamEnabledHasBeenSet() const { return m_streamEnabledHasBeenSet; } /** *

Indicates whether DynamoDB Streams is enabled on the table.

*/ inline void SetStreamEnabled(bool value) { m_streamEnabledHasBeenSet = true; m_streamEnabled = value; } /** *

Indicates whether DynamoDB Streams is enabled on the table.

*/ inline AwsDynamoDbTableStreamSpecification& WithStreamEnabled(bool value) { SetStreamEnabled(value); return *this;} /** *

Determines the information that is written to the table.

*/ inline const Aws::String& GetStreamViewType() const{ return m_streamViewType; } /** *

Determines the information that is written to the table.

*/ inline bool StreamViewTypeHasBeenSet() const { return m_streamViewTypeHasBeenSet; } /** *

Determines the information that is written to the table.

*/ inline void SetStreamViewType(const Aws::String& value) { m_streamViewTypeHasBeenSet = true; m_streamViewType = value; } /** *

Determines the information that is written to the table.

*/ inline void SetStreamViewType(Aws::String&& value) { m_streamViewTypeHasBeenSet = true; m_streamViewType = std::move(value); } /** *

Determines the information that is written to the table.

*/ inline void SetStreamViewType(const char* value) { m_streamViewTypeHasBeenSet = true; m_streamViewType.assign(value); } /** *

Determines the information that is written to the table.

*/ inline AwsDynamoDbTableStreamSpecification& WithStreamViewType(const Aws::String& value) { SetStreamViewType(value); return *this;} /** *

Determines the information that is written to the table.

*/ inline AwsDynamoDbTableStreamSpecification& WithStreamViewType(Aws::String&& value) { SetStreamViewType(std::move(value)); return *this;} /** *

Determines the information that is written to the table.

*/ inline AwsDynamoDbTableStreamSpecification& WithStreamViewType(const char* value) { SetStreamViewType(value); return *this;} private: bool m_streamEnabled; bool m_streamEnabledHasBeenSet = false; Aws::String m_streamViewType; bool m_streamViewTypeHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws