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

Describes the reference data source configured for an * application.

See Also:

AWS * API Reference

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

ID of the reference data source. This is the ID that Amazon Kinesis Analytics * assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource * operation.

*/ inline const Aws::String& GetReferenceId() const{ return m_referenceId; } /** *

ID of the reference data source. This is the ID that Amazon Kinesis Analytics * assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource * operation.

*/ inline bool ReferenceIdHasBeenSet() const { return m_referenceIdHasBeenSet; } /** *

ID of the reference data source. This is the ID that Amazon Kinesis Analytics * assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource * operation.

*/ inline void SetReferenceId(const Aws::String& value) { m_referenceIdHasBeenSet = true; m_referenceId = value; } /** *

ID of the reference data source. This is the ID that Amazon Kinesis Analytics * assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource * operation.

*/ inline void SetReferenceId(Aws::String&& value) { m_referenceIdHasBeenSet = true; m_referenceId = std::move(value); } /** *

ID of the reference data source. This is the ID that Amazon Kinesis Analytics * assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource * operation.

*/ inline void SetReferenceId(const char* value) { m_referenceIdHasBeenSet = true; m_referenceId.assign(value); } /** *

ID of the reference data source. This is the ID that Amazon Kinesis Analytics * assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource * operation.

*/ inline ReferenceDataSourceDescription& WithReferenceId(const Aws::String& value) { SetReferenceId(value); return *this;} /** *

ID of the reference data source. This is the ID that Amazon Kinesis Analytics * assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource * operation.

*/ inline ReferenceDataSourceDescription& WithReferenceId(Aws::String&& value) { SetReferenceId(std::move(value)); return *this;} /** *

ID of the reference data source. This is the ID that Amazon Kinesis Analytics * assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource * operation.

*/ inline ReferenceDataSourceDescription& WithReferenceId(const char* value) { SetReferenceId(value); return *this;} /** *

The in-application table name created by the specific reference data source * configuration.

*/ inline const Aws::String& GetTableName() const{ return m_tableName; } /** *

The in-application table name created by the specific reference data source * configuration.

*/ inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; } /** *

The in-application table name created by the specific reference data source * configuration.

*/ inline void SetTableName(const Aws::String& value) { m_tableNameHasBeenSet = true; m_tableName = value; } /** *

The in-application table name created by the specific reference data source * configuration.

*/ inline void SetTableName(Aws::String&& value) { m_tableNameHasBeenSet = true; m_tableName = std::move(value); } /** *

The in-application table name created by the specific reference data source * configuration.

*/ inline void SetTableName(const char* value) { m_tableNameHasBeenSet = true; m_tableName.assign(value); } /** *

The in-application table name created by the specific reference data source * configuration.

*/ inline ReferenceDataSourceDescription& WithTableName(const Aws::String& value) { SetTableName(value); return *this;} /** *

The in-application table name created by the specific reference data source * configuration.

*/ inline ReferenceDataSourceDescription& WithTableName(Aws::String&& value) { SetTableName(std::move(value)); return *this;} /** *

The in-application table name created by the specific reference data source * configuration.

*/ inline ReferenceDataSourceDescription& WithTableName(const char* value) { SetTableName(value); return *this;} /** *

Provides the S3 bucket name, the object key name that contains the reference * data. It also provides the Amazon Resource Name (ARN) of the IAM role that * Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate * the in-application reference table.

*/ inline const S3ReferenceDataSourceDescription& GetS3ReferenceDataSourceDescription() const{ return m_s3ReferenceDataSourceDescription; } /** *

Provides the S3 bucket name, the object key name that contains the reference * data. It also provides the Amazon Resource Name (ARN) of the IAM role that * Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate * the in-application reference table.

*/ inline bool S3ReferenceDataSourceDescriptionHasBeenSet() const { return m_s3ReferenceDataSourceDescriptionHasBeenSet; } /** *

Provides the S3 bucket name, the object key name that contains the reference * data. It also provides the Amazon Resource Name (ARN) of the IAM role that * Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate * the in-application reference table.

*/ inline void SetS3ReferenceDataSourceDescription(const S3ReferenceDataSourceDescription& value) { m_s3ReferenceDataSourceDescriptionHasBeenSet = true; m_s3ReferenceDataSourceDescription = value; } /** *

Provides the S3 bucket name, the object key name that contains the reference * data. It also provides the Amazon Resource Name (ARN) of the IAM role that * Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate * the in-application reference table.

*/ inline void SetS3ReferenceDataSourceDescription(S3ReferenceDataSourceDescription&& value) { m_s3ReferenceDataSourceDescriptionHasBeenSet = true; m_s3ReferenceDataSourceDescription = std::move(value); } /** *

Provides the S3 bucket name, the object key name that contains the reference * data. It also provides the Amazon Resource Name (ARN) of the IAM role that * Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate * the in-application reference table.

*/ inline ReferenceDataSourceDescription& WithS3ReferenceDataSourceDescription(const S3ReferenceDataSourceDescription& value) { SetS3ReferenceDataSourceDescription(value); return *this;} /** *

Provides the S3 bucket name, the object key name that contains the reference * data. It also provides the Amazon Resource Name (ARN) of the IAM role that * Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate * the in-application reference table.

*/ inline ReferenceDataSourceDescription& WithS3ReferenceDataSourceDescription(S3ReferenceDataSourceDescription&& value) { SetS3ReferenceDataSourceDescription(std::move(value)); return *this;} /** *

Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.

*/ inline const SourceSchema& GetReferenceSchema() const{ return m_referenceSchema; } /** *

Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.

*/ inline bool ReferenceSchemaHasBeenSet() const { return m_referenceSchemaHasBeenSet; } /** *

Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.

*/ inline void SetReferenceSchema(const SourceSchema& value) { m_referenceSchemaHasBeenSet = true; m_referenceSchema = value; } /** *

Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.

*/ inline void SetReferenceSchema(SourceSchema&& value) { m_referenceSchemaHasBeenSet = true; m_referenceSchema = std::move(value); } /** *

Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.

*/ inline ReferenceDataSourceDescription& WithReferenceSchema(const SourceSchema& value) { SetReferenceSchema(value); return *this;} /** *

Describes the format of the data in the streaming source, and how each data * element maps to corresponding columns created in the in-application stream.

*/ inline ReferenceDataSourceDescription& WithReferenceSchema(SourceSchema&& value) { SetReferenceSchema(std::move(value)); return *this;} private: Aws::String m_referenceId; bool m_referenceIdHasBeenSet = false; Aws::String m_tableName; bool m_tableNameHasBeenSet = false; S3ReferenceDataSourceDescription m_s3ReferenceDataSourceDescription; bool m_s3ReferenceDataSourceDescriptionHasBeenSet = false; SourceSchema m_referenceSchema; bool m_referenceSchemaHasBeenSet = false; }; } // namespace Model } // namespace KinesisAnalytics } // namespace Aws