/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include This documentation is for version 1 of the Amazon Kinesis Data
* Analytics API, which only supports SQL applications. Version 2 of the API
* supports SQL and Java applications. For more information about version 2, see Amazon Kinesis Data Analytics
* API V2 Documentation. Provides a description of the
* application, including the application Amazon Resource Name (ARN), status,
* latest version, and input and output configuration.See Also:
* AWS
* API Reference
Name of the application.
*/ inline const Aws::String& GetApplicationName() const{ return m_applicationName; } /** *Name of the application.
*/ inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; } /** *Name of the application.
*/ inline void SetApplicationName(const Aws::String& value) { m_applicationNameHasBeenSet = true; m_applicationName = value; } /** *Name of the application.
*/ inline void SetApplicationName(Aws::String&& value) { m_applicationNameHasBeenSet = true; m_applicationName = std::move(value); } /** *Name of the application.
*/ inline void SetApplicationName(const char* value) { m_applicationNameHasBeenSet = true; m_applicationName.assign(value); } /** *Name of the application.
*/ inline ApplicationDetail& WithApplicationName(const Aws::String& value) { SetApplicationName(value); return *this;} /** *Name of the application.
*/ inline ApplicationDetail& WithApplicationName(Aws::String&& value) { SetApplicationName(std::move(value)); return *this;} /** *Name of the application.
*/ inline ApplicationDetail& WithApplicationName(const char* value) { SetApplicationName(value); return *this;} /** *Description of the application.
*/ inline const Aws::String& GetApplicationDescription() const{ return m_applicationDescription; } /** *Description of the application.
*/ inline bool ApplicationDescriptionHasBeenSet() const { return m_applicationDescriptionHasBeenSet; } /** *Description of the application.
*/ inline void SetApplicationDescription(const Aws::String& value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription = value; } /** *Description of the application.
*/ inline void SetApplicationDescription(Aws::String&& value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription = std::move(value); } /** *Description of the application.
*/ inline void SetApplicationDescription(const char* value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription.assign(value); } /** *Description of the application.
*/ inline ApplicationDetail& WithApplicationDescription(const Aws::String& value) { SetApplicationDescription(value); return *this;} /** *Description of the application.
*/ inline ApplicationDetail& WithApplicationDescription(Aws::String&& value) { SetApplicationDescription(std::move(value)); return *this;} /** *Description of the application.
*/ inline ApplicationDetail& WithApplicationDescription(const char* value) { SetApplicationDescription(value); return *this;} /** *ARN of the application.
*/ inline const Aws::String& GetApplicationARN() const{ return m_applicationARN; } /** *ARN of the application.
*/ inline bool ApplicationARNHasBeenSet() const { return m_applicationARNHasBeenSet; } /** *ARN of the application.
*/ inline void SetApplicationARN(const Aws::String& value) { m_applicationARNHasBeenSet = true; m_applicationARN = value; } /** *ARN of the application.
*/ inline void SetApplicationARN(Aws::String&& value) { m_applicationARNHasBeenSet = true; m_applicationARN = std::move(value); } /** *ARN of the application.
*/ inline void SetApplicationARN(const char* value) { m_applicationARNHasBeenSet = true; m_applicationARN.assign(value); } /** *ARN of the application.
*/ inline ApplicationDetail& WithApplicationARN(const Aws::String& value) { SetApplicationARN(value); return *this;} /** *ARN of the application.
*/ inline ApplicationDetail& WithApplicationARN(Aws::String&& value) { SetApplicationARN(std::move(value)); return *this;} /** *ARN of the application.
*/ inline ApplicationDetail& WithApplicationARN(const char* value) { SetApplicationARN(value); return *this;} /** *Status of the application.
*/ inline const ApplicationStatus& GetApplicationStatus() const{ return m_applicationStatus; } /** *Status of the application.
*/ inline bool ApplicationStatusHasBeenSet() const { return m_applicationStatusHasBeenSet; } /** *Status of the application.
*/ inline void SetApplicationStatus(const ApplicationStatus& value) { m_applicationStatusHasBeenSet = true; m_applicationStatus = value; } /** *Status of the application.
*/ inline void SetApplicationStatus(ApplicationStatus&& value) { m_applicationStatusHasBeenSet = true; m_applicationStatus = std::move(value); } /** *Status of the application.
*/ inline ApplicationDetail& WithApplicationStatus(const ApplicationStatus& value) { SetApplicationStatus(value); return *this;} /** *Status of the application.
*/ inline ApplicationDetail& WithApplicationStatus(ApplicationStatus&& value) { SetApplicationStatus(std::move(value)); return *this;} /** *Time stamp when the application version was created.
*/ inline const Aws::Utils::DateTime& GetCreateTimestamp() const{ return m_createTimestamp; } /** *Time stamp when the application version was created.
*/ inline bool CreateTimestampHasBeenSet() const { return m_createTimestampHasBeenSet; } /** *Time stamp when the application version was created.
*/ inline void SetCreateTimestamp(const Aws::Utils::DateTime& value) { m_createTimestampHasBeenSet = true; m_createTimestamp = value; } /** *Time stamp when the application version was created.
*/ inline void SetCreateTimestamp(Aws::Utils::DateTime&& value) { m_createTimestampHasBeenSet = true; m_createTimestamp = std::move(value); } /** *Time stamp when the application version was created.
*/ inline ApplicationDetail& WithCreateTimestamp(const Aws::Utils::DateTime& value) { SetCreateTimestamp(value); return *this;} /** *Time stamp when the application version was created.
*/ inline ApplicationDetail& WithCreateTimestamp(Aws::Utils::DateTime&& value) { SetCreateTimestamp(std::move(value)); return *this;} /** *Time stamp when the application was last updated.
*/ inline const Aws::Utils::DateTime& GetLastUpdateTimestamp() const{ return m_lastUpdateTimestamp; } /** *Time stamp when the application was last updated.
*/ inline bool LastUpdateTimestampHasBeenSet() const { return m_lastUpdateTimestampHasBeenSet; } /** *Time stamp when the application was last updated.
*/ inline void SetLastUpdateTimestamp(const Aws::Utils::DateTime& value) { m_lastUpdateTimestampHasBeenSet = true; m_lastUpdateTimestamp = value; } /** *Time stamp when the application was last updated.
*/ inline void SetLastUpdateTimestamp(Aws::Utils::DateTime&& value) { m_lastUpdateTimestampHasBeenSet = true; m_lastUpdateTimestamp = std::move(value); } /** *Time stamp when the application was last updated.
*/ inline ApplicationDetail& WithLastUpdateTimestamp(const Aws::Utils::DateTime& value) { SetLastUpdateTimestamp(value); return *this;} /** *Time stamp when the application was last updated.
*/ inline ApplicationDetail& WithLastUpdateTimestamp(Aws::Utils::DateTime&& value) { SetLastUpdateTimestamp(std::move(value)); return *this;} /** *Describes the application input configuration. For more information, see Configuring * Application Input.
*/ inline const Aws::VectorDescribes the application input configuration. For more information, see Configuring * Application Input.
*/ inline bool InputDescriptionsHasBeenSet() const { return m_inputDescriptionsHasBeenSet; } /** *Describes the application input configuration. For more information, see Configuring * Application Input.
*/ inline void SetInputDescriptions(const Aws::VectorDescribes the application input configuration. For more information, see Configuring * Application Input.
*/ inline void SetInputDescriptions(Aws::VectorDescribes the application input configuration. For more information, see Configuring * Application Input.
*/ inline ApplicationDetail& WithInputDescriptions(const Aws::VectorDescribes the application input configuration. For more information, see Configuring * Application Input.
*/ inline ApplicationDetail& WithInputDescriptions(Aws::VectorDescribes the application input configuration. For more information, see Configuring * Application Input.
*/ inline ApplicationDetail& AddInputDescriptions(const InputDescription& value) { m_inputDescriptionsHasBeenSet = true; m_inputDescriptions.push_back(value); return *this; } /** *Describes the application input configuration. For more information, see Configuring * Application Input.
*/ inline ApplicationDetail& AddInputDescriptions(InputDescription&& value) { m_inputDescriptionsHasBeenSet = true; m_inputDescriptions.push_back(std::move(value)); return *this; } /** *Describes the application output configuration. For more information, see Configuring * Application Output.
*/ inline const Aws::VectorDescribes the application output configuration. For more information, see Configuring * Application Output.
*/ inline bool OutputDescriptionsHasBeenSet() const { return m_outputDescriptionsHasBeenSet; } /** *Describes the application output configuration. For more information, see Configuring * Application Output.
*/ inline void SetOutputDescriptions(const Aws::VectorDescribes the application output configuration. For more information, see Configuring * Application Output.
*/ inline void SetOutputDescriptions(Aws::VectorDescribes the application output configuration. For more information, see Configuring * Application Output.
*/ inline ApplicationDetail& WithOutputDescriptions(const Aws::VectorDescribes the application output configuration. For more information, see Configuring * Application Output.
*/ inline ApplicationDetail& WithOutputDescriptions(Aws::VectorDescribes the application output configuration. For more information, see Configuring * Application Output.
*/ inline ApplicationDetail& AddOutputDescriptions(const OutputDescription& value) { m_outputDescriptionsHasBeenSet = true; m_outputDescriptions.push_back(value); return *this; } /** *Describes the application output configuration. For more information, see Configuring * Application Output.
*/ inline ApplicationDetail& AddOutputDescriptions(OutputDescription&& value) { m_outputDescriptionsHasBeenSet = true; m_outputDescriptions.push_back(std::move(value)); return *this; } /** *Describes reference data sources configured for the application. For more * information, see Configuring * Application Input.
*/ inline const Aws::VectorDescribes reference data sources configured for the application. For more * information, see Configuring * Application Input.
*/ inline bool ReferenceDataSourceDescriptionsHasBeenSet() const { return m_referenceDataSourceDescriptionsHasBeenSet; } /** *Describes reference data sources configured for the application. For more * information, see Configuring * Application Input.
*/ inline void SetReferenceDataSourceDescriptions(const Aws::VectorDescribes reference data sources configured for the application. For more * information, see Configuring * Application Input.
*/ inline void SetReferenceDataSourceDescriptions(Aws::VectorDescribes reference data sources configured for the application. For more * information, see Configuring * Application Input.
*/ inline ApplicationDetail& WithReferenceDataSourceDescriptions(const Aws::VectorDescribes reference data sources configured for the application. For more * information, see Configuring * Application Input.
*/ inline ApplicationDetail& WithReferenceDataSourceDescriptions(Aws::VectorDescribes reference data sources configured for the application. For more * information, see Configuring * Application Input.
*/ inline ApplicationDetail& AddReferenceDataSourceDescriptions(const ReferenceDataSourceDescription& value) { m_referenceDataSourceDescriptionsHasBeenSet = true; m_referenceDataSourceDescriptions.push_back(value); return *this; } /** *Describes reference data sources configured for the application. For more * information, see Configuring * Application Input.
*/ inline ApplicationDetail& AddReferenceDataSourceDescriptions(ReferenceDataSourceDescription&& value) { m_referenceDataSourceDescriptionsHasBeenSet = true; m_referenceDataSourceDescriptions.push_back(std::move(value)); return *this; } /** *Describes the CloudWatch log streams that are configured to receive * application messages. For more information about using CloudWatch log streams * with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.
*/ inline const Aws::VectorDescribes the CloudWatch log streams that are configured to receive * application messages. For more information about using CloudWatch log streams * with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.
*/ inline bool CloudWatchLoggingOptionDescriptionsHasBeenSet() const { return m_cloudWatchLoggingOptionDescriptionsHasBeenSet; } /** *Describes the CloudWatch log streams that are configured to receive * application messages. For more information about using CloudWatch log streams * with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.
*/ inline void SetCloudWatchLoggingOptionDescriptions(const Aws::VectorDescribes the CloudWatch log streams that are configured to receive * application messages. For more information about using CloudWatch log streams * with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.
*/ inline void SetCloudWatchLoggingOptionDescriptions(Aws::VectorDescribes the CloudWatch log streams that are configured to receive * application messages. For more information about using CloudWatch log streams * with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.
*/ inline ApplicationDetail& WithCloudWatchLoggingOptionDescriptions(const Aws::VectorDescribes the CloudWatch log streams that are configured to receive * application messages. For more information about using CloudWatch log streams * with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.
*/ inline ApplicationDetail& WithCloudWatchLoggingOptionDescriptions(Aws::VectorDescribes the CloudWatch log streams that are configured to receive * application messages. For more information about using CloudWatch log streams * with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.
*/ inline ApplicationDetail& AddCloudWatchLoggingOptionDescriptions(const CloudWatchLoggingOptionDescription& value) { m_cloudWatchLoggingOptionDescriptionsHasBeenSet = true; m_cloudWatchLoggingOptionDescriptions.push_back(value); return *this; } /** *Describes the CloudWatch log streams that are configured to receive * application messages. For more information about using CloudWatch log streams * with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.
*/ inline ApplicationDetail& AddCloudWatchLoggingOptionDescriptions(CloudWatchLoggingOptionDescription&& value) { m_cloudWatchLoggingOptionDescriptionsHasBeenSet = true; m_cloudWatchLoggingOptionDescriptions.push_back(std::move(value)); return *this; } /** *Returns the application code that you provided to perform data analysis on * any of the in-application streams in your application.
*/ inline const Aws::String& GetApplicationCode() const{ return m_applicationCode; } /** *Returns the application code that you provided to perform data analysis on * any of the in-application streams in your application.
*/ inline bool ApplicationCodeHasBeenSet() const { return m_applicationCodeHasBeenSet; } /** *Returns the application code that you provided to perform data analysis on * any of the in-application streams in your application.
*/ inline void SetApplicationCode(const Aws::String& value) { m_applicationCodeHasBeenSet = true; m_applicationCode = value; } /** *Returns the application code that you provided to perform data analysis on * any of the in-application streams in your application.
*/ inline void SetApplicationCode(Aws::String&& value) { m_applicationCodeHasBeenSet = true; m_applicationCode = std::move(value); } /** *Returns the application code that you provided to perform data analysis on * any of the in-application streams in your application.
*/ inline void SetApplicationCode(const char* value) { m_applicationCodeHasBeenSet = true; m_applicationCode.assign(value); } /** *Returns the application code that you provided to perform data analysis on * any of the in-application streams in your application.
*/ inline ApplicationDetail& WithApplicationCode(const Aws::String& value) { SetApplicationCode(value); return *this;} /** *Returns the application code that you provided to perform data analysis on * any of the in-application streams in your application.
*/ inline ApplicationDetail& WithApplicationCode(Aws::String&& value) { SetApplicationCode(std::move(value)); return *this;} /** *Returns the application code that you provided to perform data analysis on * any of the in-application streams in your application.
*/ inline ApplicationDetail& WithApplicationCode(const char* value) { SetApplicationCode(value); return *this;} /** *Provides the current application version.
*/ inline long long GetApplicationVersionId() const{ return m_applicationVersionId; } /** *Provides the current application version.
*/ inline bool ApplicationVersionIdHasBeenSet() const { return m_applicationVersionIdHasBeenSet; } /** *Provides the current application version.
*/ inline void SetApplicationVersionId(long long value) { m_applicationVersionIdHasBeenSet = true; m_applicationVersionId = value; } /** *Provides the current application version.
*/ inline ApplicationDetail& WithApplicationVersionId(long long value) { SetApplicationVersionId(value); return *this;} private: Aws::String m_applicationName; bool m_applicationNameHasBeenSet; Aws::String m_applicationDescription; bool m_applicationDescriptionHasBeenSet; Aws::String m_applicationARN; bool m_applicationARNHasBeenSet; ApplicationStatus m_applicationStatus; bool m_applicationStatusHasBeenSet; Aws::Utils::DateTime m_createTimestamp; bool m_createTimestampHasBeenSet; Aws::Utils::DateTime m_lastUpdateTimestamp; bool m_lastUpdateTimestampHasBeenSet; Aws::Vector