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

TBD

See Also:

AWS * API Reference

*/ class CreateApplicationRequest : public KinesisAnalyticsRequest { public: AWS_KINESISANALYTICS_API CreateApplicationRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateApplication"; } AWS_KINESISANALYTICS_API Aws::String SerializePayload() const override; AWS_KINESISANALYTICS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

Name of your Amazon Kinesis Analytics application (for example, * sample-app).

*/ inline const Aws::String& GetApplicationName() const{ return m_applicationName; } /** *

Name of your Amazon Kinesis Analytics application (for example, * sample-app).

*/ inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; } /** *

Name of your Amazon Kinesis Analytics application (for example, * sample-app).

*/ inline void SetApplicationName(const Aws::String& value) { m_applicationNameHasBeenSet = true; m_applicationName = value; } /** *

Name of your Amazon Kinesis Analytics application (for example, * sample-app).

*/ inline void SetApplicationName(Aws::String&& value) { m_applicationNameHasBeenSet = true; m_applicationName = std::move(value); } /** *

Name of your Amazon Kinesis Analytics application (for example, * sample-app).

*/ inline void SetApplicationName(const char* value) { m_applicationNameHasBeenSet = true; m_applicationName.assign(value); } /** *

Name of your Amazon Kinesis Analytics application (for example, * sample-app).

*/ inline CreateApplicationRequest& WithApplicationName(const Aws::String& value) { SetApplicationName(value); return *this;} /** *

Name of your Amazon Kinesis Analytics application (for example, * sample-app).

*/ inline CreateApplicationRequest& WithApplicationName(Aws::String&& value) { SetApplicationName(std::move(value)); return *this;} /** *

Name of your Amazon Kinesis Analytics application (for example, * sample-app).

*/ inline CreateApplicationRequest& WithApplicationName(const char* value) { SetApplicationName(value); return *this;} /** *

Summary description of the application.

*/ inline const Aws::String& GetApplicationDescription() const{ return m_applicationDescription; } /** *

Summary description of the application.

*/ inline bool ApplicationDescriptionHasBeenSet() const { return m_applicationDescriptionHasBeenSet; } /** *

Summary description of the application.

*/ inline void SetApplicationDescription(const Aws::String& value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription = value; } /** *

Summary description of the application.

*/ inline void SetApplicationDescription(Aws::String&& value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription = std::move(value); } /** *

Summary description of the application.

*/ inline void SetApplicationDescription(const char* value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription.assign(value); } /** *

Summary description of the application.

*/ inline CreateApplicationRequest& WithApplicationDescription(const Aws::String& value) { SetApplicationDescription(value); return *this;} /** *

Summary description of the application.

*/ inline CreateApplicationRequest& WithApplicationDescription(Aws::String&& value) { SetApplicationDescription(std::move(value)); return *this;} /** *

Summary description of the application.

*/ inline CreateApplicationRequest& WithApplicationDescription(const char* value) { SetApplicationDescription(value); return *this;} /** *

Use this parameter to configure the application input.

You can * configure your application to receive input from a single streaming source. In * this configuration, you map this streaming source to an in-application stream * that is created. Your application code can then query the in-application stream * like a table (you can think of it as a constantly updating table).

For * the streaming source, you provide its Amazon Resource Name (ARN) and format of * data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM * role that Amazon Kinesis Analytics can assume to read this stream on your * behalf.

To create the in-application stream, you need to specify a schema * to transform your data into a schematized version used in SQL. In the schema, * you provide the necessary mapping of the data elements in the streaming source * to record columns in the in-app stream.

*/ inline const Aws::Vector& GetInputs() const{ return m_inputs; } /** *

Use this parameter to configure the application input.

You can * configure your application to receive input from a single streaming source. In * this configuration, you map this streaming source to an in-application stream * that is created. Your application code can then query the in-application stream * like a table (you can think of it as a constantly updating table).

For * the streaming source, you provide its Amazon Resource Name (ARN) and format of * data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM * role that Amazon Kinesis Analytics can assume to read this stream on your * behalf.

To create the in-application stream, you need to specify a schema * to transform your data into a schematized version used in SQL. In the schema, * you provide the necessary mapping of the data elements in the streaming source * to record columns in the in-app stream.

*/ inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; } /** *

Use this parameter to configure the application input.

You can * configure your application to receive input from a single streaming source. In * this configuration, you map this streaming source to an in-application stream * that is created. Your application code can then query the in-application stream * like a table (you can think of it as a constantly updating table).

For * the streaming source, you provide its Amazon Resource Name (ARN) and format of * data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM * role that Amazon Kinesis Analytics can assume to read this stream on your * behalf.

To create the in-application stream, you need to specify a schema * to transform your data into a schematized version used in SQL. In the schema, * you provide the necessary mapping of the data elements in the streaming source * to record columns in the in-app stream.

*/ inline void SetInputs(const Aws::Vector& value) { m_inputsHasBeenSet = true; m_inputs = value; } /** *

Use this parameter to configure the application input.

You can * configure your application to receive input from a single streaming source. In * this configuration, you map this streaming source to an in-application stream * that is created. Your application code can then query the in-application stream * like a table (you can think of it as a constantly updating table).

For * the streaming source, you provide its Amazon Resource Name (ARN) and format of * data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM * role that Amazon Kinesis Analytics can assume to read this stream on your * behalf.

To create the in-application stream, you need to specify a schema * to transform your data into a schematized version used in SQL. In the schema, * you provide the necessary mapping of the data elements in the streaming source * to record columns in the in-app stream.

*/ inline void SetInputs(Aws::Vector&& value) { m_inputsHasBeenSet = true; m_inputs = std::move(value); } /** *

Use this parameter to configure the application input.

You can * configure your application to receive input from a single streaming source. In * this configuration, you map this streaming source to an in-application stream * that is created. Your application code can then query the in-application stream * like a table (you can think of it as a constantly updating table).

For * the streaming source, you provide its Amazon Resource Name (ARN) and format of * data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM * role that Amazon Kinesis Analytics can assume to read this stream on your * behalf.

To create the in-application stream, you need to specify a schema * to transform your data into a schematized version used in SQL. In the schema, * you provide the necessary mapping of the data elements in the streaming source * to record columns in the in-app stream.

*/ inline CreateApplicationRequest& WithInputs(const Aws::Vector& value) { SetInputs(value); return *this;} /** *

Use this parameter to configure the application input.

You can * configure your application to receive input from a single streaming source. In * this configuration, you map this streaming source to an in-application stream * that is created. Your application code can then query the in-application stream * like a table (you can think of it as a constantly updating table).

For * the streaming source, you provide its Amazon Resource Name (ARN) and format of * data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM * role that Amazon Kinesis Analytics can assume to read this stream on your * behalf.

To create the in-application stream, you need to specify a schema * to transform your data into a schematized version used in SQL. In the schema, * you provide the necessary mapping of the data elements in the streaming source * to record columns in the in-app stream.

*/ inline CreateApplicationRequest& WithInputs(Aws::Vector&& value) { SetInputs(std::move(value)); return *this;} /** *

Use this parameter to configure the application input.

You can * configure your application to receive input from a single streaming source. In * this configuration, you map this streaming source to an in-application stream * that is created. Your application code can then query the in-application stream * like a table (you can think of it as a constantly updating table).

For * the streaming source, you provide its Amazon Resource Name (ARN) and format of * data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM * role that Amazon Kinesis Analytics can assume to read this stream on your * behalf.

To create the in-application stream, you need to specify a schema * to transform your data into a schematized version used in SQL. In the schema, * you provide the necessary mapping of the data elements in the streaming source * to record columns in the in-app stream.

*/ inline CreateApplicationRequest& AddInputs(const Input& value) { m_inputsHasBeenSet = true; m_inputs.push_back(value); return *this; } /** *

Use this parameter to configure the application input.

You can * configure your application to receive input from a single streaming source. In * this configuration, you map this streaming source to an in-application stream * that is created. Your application code can then query the in-application stream * like a table (you can think of it as a constantly updating table).

For * the streaming source, you provide its Amazon Resource Name (ARN) and format of * data on the stream (for example, JSON, CSV, etc.). You also must provide an IAM * role that Amazon Kinesis Analytics can assume to read this stream on your * behalf.

To create the in-application stream, you need to specify a schema * to transform your data into a schematized version used in SQL. In the schema, * you provide the necessary mapping of the data elements in the streaming source * to record columns in the in-app stream.

*/ inline CreateApplicationRequest& AddInputs(Input&& value) { m_inputsHasBeenSet = true; m_inputs.push_back(std::move(value)); return *this; } /** *

You can configure application output to write data from any of the * in-application streams to up to three destinations.

These destinations * can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS * Lambda destinations, or any combination of the three.

In the * configuration, you specify the in-application stream name, the destination * stream or Lambda function Amazon Resource Name (ARN), and the format to use when * writing data. You must also provide an IAM role that Amazon Kinesis Analytics * can assume to write to the destination stream or Lambda function on your * behalf.

In the output configuration, you also provide the output stream * or Lambda function ARN. For stream destinations, you provide the format of data * in the stream (for example, JSON, CSV). You also must provide an IAM role that * Amazon Kinesis Analytics can assume to write to the stream or Lambda function on * your behalf.

*/ inline const Aws::Vector& GetOutputs() const{ return m_outputs; } /** *

You can configure application output to write data from any of the * in-application streams to up to three destinations.

These destinations * can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS * Lambda destinations, or any combination of the three.

In the * configuration, you specify the in-application stream name, the destination * stream or Lambda function Amazon Resource Name (ARN), and the format to use when * writing data. You must also provide an IAM role that Amazon Kinesis Analytics * can assume to write to the destination stream or Lambda function on your * behalf.

In the output configuration, you also provide the output stream * or Lambda function ARN. For stream destinations, you provide the format of data * in the stream (for example, JSON, CSV). You also must provide an IAM role that * Amazon Kinesis Analytics can assume to write to the stream or Lambda function on * your behalf.

*/ inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; } /** *

You can configure application output to write data from any of the * in-application streams to up to three destinations.

These destinations * can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS * Lambda destinations, or any combination of the three.

In the * configuration, you specify the in-application stream name, the destination * stream or Lambda function Amazon Resource Name (ARN), and the format to use when * writing data. You must also provide an IAM role that Amazon Kinesis Analytics * can assume to write to the destination stream or Lambda function on your * behalf.

In the output configuration, you also provide the output stream * or Lambda function ARN. For stream destinations, you provide the format of data * in the stream (for example, JSON, CSV). You also must provide an IAM role that * Amazon Kinesis Analytics can assume to write to the stream or Lambda function on * your behalf.

*/ inline void SetOutputs(const Aws::Vector& value) { m_outputsHasBeenSet = true; m_outputs = value; } /** *

You can configure application output to write data from any of the * in-application streams to up to three destinations.

These destinations * can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS * Lambda destinations, or any combination of the three.

In the * configuration, you specify the in-application stream name, the destination * stream or Lambda function Amazon Resource Name (ARN), and the format to use when * writing data. You must also provide an IAM role that Amazon Kinesis Analytics * can assume to write to the destination stream or Lambda function on your * behalf.

In the output configuration, you also provide the output stream * or Lambda function ARN. For stream destinations, you provide the format of data * in the stream (for example, JSON, CSV). You also must provide an IAM role that * Amazon Kinesis Analytics can assume to write to the stream or Lambda function on * your behalf.

*/ inline void SetOutputs(Aws::Vector&& value) { m_outputsHasBeenSet = true; m_outputs = std::move(value); } /** *

You can configure application output to write data from any of the * in-application streams to up to three destinations.

These destinations * can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS * Lambda destinations, or any combination of the three.

In the * configuration, you specify the in-application stream name, the destination * stream or Lambda function Amazon Resource Name (ARN), and the format to use when * writing data. You must also provide an IAM role that Amazon Kinesis Analytics * can assume to write to the destination stream or Lambda function on your * behalf.

In the output configuration, you also provide the output stream * or Lambda function ARN. For stream destinations, you provide the format of data * in the stream (for example, JSON, CSV). You also must provide an IAM role that * Amazon Kinesis Analytics can assume to write to the stream or Lambda function on * your behalf.

*/ inline CreateApplicationRequest& WithOutputs(const Aws::Vector& value) { SetOutputs(value); return *this;} /** *

You can configure application output to write data from any of the * in-application streams to up to three destinations.

These destinations * can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS * Lambda destinations, or any combination of the three.

In the * configuration, you specify the in-application stream name, the destination * stream or Lambda function Amazon Resource Name (ARN), and the format to use when * writing data. You must also provide an IAM role that Amazon Kinesis Analytics * can assume to write to the destination stream or Lambda function on your * behalf.

In the output configuration, you also provide the output stream * or Lambda function ARN. For stream destinations, you provide the format of data * in the stream (for example, JSON, CSV). You also must provide an IAM role that * Amazon Kinesis Analytics can assume to write to the stream or Lambda function on * your behalf.

*/ inline CreateApplicationRequest& WithOutputs(Aws::Vector&& value) { SetOutputs(std::move(value)); return *this;} /** *

You can configure application output to write data from any of the * in-application streams to up to three destinations.

These destinations * can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS * Lambda destinations, or any combination of the three.

In the * configuration, you specify the in-application stream name, the destination * stream or Lambda function Amazon Resource Name (ARN), and the format to use when * writing data. You must also provide an IAM role that Amazon Kinesis Analytics * can assume to write to the destination stream or Lambda function on your * behalf.

In the output configuration, you also provide the output stream * or Lambda function ARN. For stream destinations, you provide the format of data * in the stream (for example, JSON, CSV). You also must provide an IAM role that * Amazon Kinesis Analytics can assume to write to the stream or Lambda function on * your behalf.

*/ inline CreateApplicationRequest& AddOutputs(const Output& value) { m_outputsHasBeenSet = true; m_outputs.push_back(value); return *this; } /** *

You can configure application output to write data from any of the * in-application streams to up to three destinations.

These destinations * can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, AWS * Lambda destinations, or any combination of the three.

In the * configuration, you specify the in-application stream name, the destination * stream or Lambda function Amazon Resource Name (ARN), and the format to use when * writing data. You must also provide an IAM role that Amazon Kinesis Analytics * can assume to write to the destination stream or Lambda function on your * behalf.

In the output configuration, you also provide the output stream * or Lambda function ARN. For stream destinations, you provide the format of data * in the stream (for example, JSON, CSV). You also must provide an IAM role that * Amazon Kinesis Analytics can assume to write to the stream or Lambda function on * your behalf.

*/ inline CreateApplicationRequest& AddOutputs(Output&& value) { m_outputsHasBeenSet = true; m_outputs.push_back(std::move(value)); return *this; } /** *

Use this parameter to configure a CloudWatch log stream to monitor * application configuration errors. For more information, see Working * with Amazon CloudWatch Logs.

*/ inline const Aws::Vector& GetCloudWatchLoggingOptions() const{ return m_cloudWatchLoggingOptions; } /** *

Use this parameter to configure a CloudWatch log stream to monitor * application configuration errors. For more information, see Working * with Amazon CloudWatch Logs.

*/ inline bool CloudWatchLoggingOptionsHasBeenSet() const { return m_cloudWatchLoggingOptionsHasBeenSet; } /** *

Use this parameter to configure a CloudWatch log stream to monitor * application configuration errors. For more information, see Working * with Amazon CloudWatch Logs.

*/ inline void SetCloudWatchLoggingOptions(const Aws::Vector& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions = value; } /** *

Use this parameter to configure a CloudWatch log stream to monitor * application configuration errors. For more information, see Working * with Amazon CloudWatch Logs.

*/ inline void SetCloudWatchLoggingOptions(Aws::Vector&& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions = std::move(value); } /** *

Use this parameter to configure a CloudWatch log stream to monitor * application configuration errors. For more information, see Working * with Amazon CloudWatch Logs.

*/ inline CreateApplicationRequest& WithCloudWatchLoggingOptions(const Aws::Vector& value) { SetCloudWatchLoggingOptions(value); return *this;} /** *

Use this parameter to configure a CloudWatch log stream to monitor * application configuration errors. For more information, see Working * with Amazon CloudWatch Logs.

*/ inline CreateApplicationRequest& WithCloudWatchLoggingOptions(Aws::Vector&& value) { SetCloudWatchLoggingOptions(std::move(value)); return *this;} /** *

Use this parameter to configure a CloudWatch log stream to monitor * application configuration errors. For more information, see Working * with Amazon CloudWatch Logs.

*/ inline CreateApplicationRequest& AddCloudWatchLoggingOptions(const CloudWatchLoggingOption& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions.push_back(value); return *this; } /** *

Use this parameter to configure a CloudWatch log stream to monitor * application configuration errors. For more information, see Working * with Amazon CloudWatch Logs.

*/ inline CreateApplicationRequest& AddCloudWatchLoggingOptions(CloudWatchLoggingOption&& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions.push_back(std::move(value)); return *this; } /** *

One or more SQL statements that read input data, transform it, and generate * output. For example, you can write a SQL statement that reads data from one * in-application stream, generates a running average of the number of * advertisement clicks by vendor, and insert resulting rows in another * in-application stream using pumps. For more information about the typical * pattern, see Application * Code.

You can provide such series of SQL statements, where output of * one statement can be used as the input for the next statement. You store * intermediate results by creating in-application streams and pumps.

Note * that the application code must create the streams with names specified in the * Outputs. For example, if your Outputs defines output * streams named ExampleOutputStream1 and * ExampleOutputStream2, then your application code must create these * streams.

*/ inline const Aws::String& GetApplicationCode() const{ return m_applicationCode; } /** *

One or more SQL statements that read input data, transform it, and generate * output. For example, you can write a SQL statement that reads data from one * in-application stream, generates a running average of the number of * advertisement clicks by vendor, and insert resulting rows in another * in-application stream using pumps. For more information about the typical * pattern, see Application * Code.

You can provide such series of SQL statements, where output of * one statement can be used as the input for the next statement. You store * intermediate results by creating in-application streams and pumps.

Note * that the application code must create the streams with names specified in the * Outputs. For example, if your Outputs defines output * streams named ExampleOutputStream1 and * ExampleOutputStream2, then your application code must create these * streams.

*/ inline bool ApplicationCodeHasBeenSet() const { return m_applicationCodeHasBeenSet; } /** *

One or more SQL statements that read input data, transform it, and generate * output. For example, you can write a SQL statement that reads data from one * in-application stream, generates a running average of the number of * advertisement clicks by vendor, and insert resulting rows in another * in-application stream using pumps. For more information about the typical * pattern, see Application * Code.

You can provide such series of SQL statements, where output of * one statement can be used as the input for the next statement. You store * intermediate results by creating in-application streams and pumps.

Note * that the application code must create the streams with names specified in the * Outputs. For example, if your Outputs defines output * streams named ExampleOutputStream1 and * ExampleOutputStream2, then your application code must create these * streams.

*/ inline void SetApplicationCode(const Aws::String& value) { m_applicationCodeHasBeenSet = true; m_applicationCode = value; } /** *

One or more SQL statements that read input data, transform it, and generate * output. For example, you can write a SQL statement that reads data from one * in-application stream, generates a running average of the number of * advertisement clicks by vendor, and insert resulting rows in another * in-application stream using pumps. For more information about the typical * pattern, see Application * Code.

You can provide such series of SQL statements, where output of * one statement can be used as the input for the next statement. You store * intermediate results by creating in-application streams and pumps.

Note * that the application code must create the streams with names specified in the * Outputs. For example, if your Outputs defines output * streams named ExampleOutputStream1 and * ExampleOutputStream2, then your application code must create these * streams.

*/ inline void SetApplicationCode(Aws::String&& value) { m_applicationCodeHasBeenSet = true; m_applicationCode = std::move(value); } /** *

One or more SQL statements that read input data, transform it, and generate * output. For example, you can write a SQL statement that reads data from one * in-application stream, generates a running average of the number of * advertisement clicks by vendor, and insert resulting rows in another * in-application stream using pumps. For more information about the typical * pattern, see Application * Code.

You can provide such series of SQL statements, where output of * one statement can be used as the input for the next statement. You store * intermediate results by creating in-application streams and pumps.

Note * that the application code must create the streams with names specified in the * Outputs. For example, if your Outputs defines output * streams named ExampleOutputStream1 and * ExampleOutputStream2, then your application code must create these * streams.

*/ inline void SetApplicationCode(const char* value) { m_applicationCodeHasBeenSet = true; m_applicationCode.assign(value); } /** *

One or more SQL statements that read input data, transform it, and generate * output. For example, you can write a SQL statement that reads data from one * in-application stream, generates a running average of the number of * advertisement clicks by vendor, and insert resulting rows in another * in-application stream using pumps. For more information about the typical * pattern, see Application * Code.

You can provide such series of SQL statements, where output of * one statement can be used as the input for the next statement. You store * intermediate results by creating in-application streams and pumps.

Note * that the application code must create the streams with names specified in the * Outputs. For example, if your Outputs defines output * streams named ExampleOutputStream1 and * ExampleOutputStream2, then your application code must create these * streams.

*/ inline CreateApplicationRequest& WithApplicationCode(const Aws::String& value) { SetApplicationCode(value); return *this;} /** *

One or more SQL statements that read input data, transform it, and generate * output. For example, you can write a SQL statement that reads data from one * in-application stream, generates a running average of the number of * advertisement clicks by vendor, and insert resulting rows in another * in-application stream using pumps. For more information about the typical * pattern, see Application * Code.

You can provide such series of SQL statements, where output of * one statement can be used as the input for the next statement. You store * intermediate results by creating in-application streams and pumps.

Note * that the application code must create the streams with names specified in the * Outputs. For example, if your Outputs defines output * streams named ExampleOutputStream1 and * ExampleOutputStream2, then your application code must create these * streams.

*/ inline CreateApplicationRequest& WithApplicationCode(Aws::String&& value) { SetApplicationCode(std::move(value)); return *this;} /** *

One or more SQL statements that read input data, transform it, and generate * output. For example, you can write a SQL statement that reads data from one * in-application stream, generates a running average of the number of * advertisement clicks by vendor, and insert resulting rows in another * in-application stream using pumps. For more information about the typical * pattern, see Application * Code.

You can provide such series of SQL statements, where output of * one statement can be used as the input for the next statement. You store * intermediate results by creating in-application streams and pumps.

Note * that the application code must create the streams with names specified in the * Outputs. For example, if your Outputs defines output * streams named ExampleOutputStream1 and * ExampleOutputStream2, then your application code must create these * streams.

*/ inline CreateApplicationRequest& WithApplicationCode(const char* value) { SetApplicationCode(value); return *this;} /** *

A list of one or more tags to assign to the application. A tag is a key-value * pair that identifies an application. Note that the maximum number of application * tags includes system tags. The maximum number of user-defined application tags * is 50. For more information, see Using * Tagging.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

A list of one or more tags to assign to the application. A tag is a key-value * pair that identifies an application. Note that the maximum number of application * tags includes system tags. The maximum number of user-defined application tags * is 50. For more information, see Using * Tagging.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

A list of one or more tags to assign to the application. A tag is a key-value * pair that identifies an application. Note that the maximum number of application * tags includes system tags. The maximum number of user-defined application tags * is 50. For more information, see Using * Tagging.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

A list of one or more tags to assign to the application. A tag is a key-value * pair that identifies an application. Note that the maximum number of application * tags includes system tags. The maximum number of user-defined application tags * is 50. For more information, see Using * Tagging.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

A list of one or more tags to assign to the application. A tag is a key-value * pair that identifies an application. Note that the maximum number of application * tags includes system tags. The maximum number of user-defined application tags * is 50. For more information, see Using * Tagging.

*/ inline CreateApplicationRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

A list of one or more tags to assign to the application. A tag is a key-value * pair that identifies an application. Note that the maximum number of application * tags includes system tags. The maximum number of user-defined application tags * is 50. For more information, see Using * Tagging.

*/ inline CreateApplicationRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

A list of one or more tags to assign to the application. A tag is a key-value * pair that identifies an application. Note that the maximum number of application * tags includes system tags. The maximum number of user-defined application tags * is 50. For more information, see Using * Tagging.

*/ inline CreateApplicationRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

A list of one or more tags to assign to the application. A tag is a key-value * pair that identifies an application. Note that the maximum number of application * tags includes system tags. The maximum number of user-defined application tags * is 50. For more information, see Using * Tagging.

*/ inline CreateApplicationRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_applicationName; bool m_applicationNameHasBeenSet = false; Aws::String m_applicationDescription; bool m_applicationDescriptionHasBeenSet = false; Aws::Vector m_inputs; bool m_inputsHasBeenSet = false; Aws::Vector m_outputs; bool m_outputsHasBeenSet = false; Aws::Vector m_cloudWatchLoggingOptions; bool m_cloudWatchLoggingOptionsHasBeenSet = false; Aws::String m_applicationCode; bool m_applicationCodeHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace KinesisAnalytics } // namespace Aws