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

Overview

*

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.

This is the Amazon Kinesis Analytics * v1 API Reference. The Amazon Kinesis Analytics Developer Guide provides * additional information.

*/ class AWS_KINESISANALYTICS_API KinesisAnalyticsClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods { public: typedef Aws::Client::AWSJsonClient BASECLASS; static const char* SERVICE_NAME; static const char* ALLOCATION_TAG; typedef KinesisAnalyticsClientConfiguration ClientConfigurationType; typedef KinesisAnalyticsEndpointProvider EndpointProviderType; /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ KinesisAnalyticsClient(const Aws::KinesisAnalytics::KinesisAnalyticsClientConfiguration& clientConfiguration = Aws::KinesisAnalytics::KinesisAnalyticsClientConfiguration(), std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG)); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ KinesisAnalyticsClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::KinesisAnalytics::KinesisAnalyticsClientConfiguration& clientConfiguration = Aws::KinesisAnalytics::KinesisAnalyticsClientConfiguration()); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ KinesisAnalyticsClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::KinesisAnalytics::KinesisAnalyticsClientConfiguration& clientConfiguration = Aws::KinesisAnalytics::KinesisAnalyticsClientConfiguration()); /* Legacy constructors due deprecation */ /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ KinesisAnalyticsClient(const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ KinesisAnalyticsClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ KinesisAnalyticsClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~KinesisAnalyticsClient(); /** *

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.

Adds a CloudWatch log stream to monitor * application configuration errors. For more information about using CloudWatch * log streams with Amazon Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.

See Also:

AWS * API Reference

*/ virtual Model::AddApplicationCloudWatchLoggingOptionOutcome AddApplicationCloudWatchLoggingOption(const Model::AddApplicationCloudWatchLoggingOptionRequest& request) const; /** * A Callable wrapper for AddApplicationCloudWatchLoggingOption that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AddApplicationCloudWatchLoggingOptionOutcomeCallable AddApplicationCloudWatchLoggingOptionCallable(const AddApplicationCloudWatchLoggingOptionRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::AddApplicationCloudWatchLoggingOption, request); } /** * An Async wrapper for AddApplicationCloudWatchLoggingOption that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AddApplicationCloudWatchLoggingOptionAsync(const AddApplicationCloudWatchLoggingOptionRequestT& request, const AddApplicationCloudWatchLoggingOptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::AddApplicationCloudWatchLoggingOption, request, handler, context); } /** *

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.

Adds a streaming source to your Amazon * Kinesis application. For conceptual information, see Configuring * Application Input.

You can add a streaming source either when you * create an application or you can use this operation to add a streaming source * after you create an application. For more information, see CreateApplication.

*

Any configuration update, including adding a streaming source using this * operation, results in a new version of the application. You can use the DescribeApplication * operation to find the current application version.

This operation * requires permissions to perform the * kinesisanalytics:AddApplicationInput action.

See * Also:

AWS * API Reference

*/ virtual Model::AddApplicationInputOutcome AddApplicationInput(const Model::AddApplicationInputRequest& request) const; /** * A Callable wrapper for AddApplicationInput that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AddApplicationInputOutcomeCallable AddApplicationInputCallable(const AddApplicationInputRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::AddApplicationInput, request); } /** * An Async wrapper for AddApplicationInput that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AddApplicationInputAsync(const AddApplicationInputRequestT& request, const AddApplicationInputResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::AddApplicationInput, request, handler, context); } /** *

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.

Adds an InputProcessingConfiguration * to an application. An input processor preprocesses records on the input stream * before the application's SQL code executes. Currently, the only input processor * available is AWS * Lambda.

See Also:

AWS * API Reference

*/ virtual Model::AddApplicationInputProcessingConfigurationOutcome AddApplicationInputProcessingConfiguration(const Model::AddApplicationInputProcessingConfigurationRequest& request) const; /** * A Callable wrapper for AddApplicationInputProcessingConfiguration that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AddApplicationInputProcessingConfigurationOutcomeCallable AddApplicationInputProcessingConfigurationCallable(const AddApplicationInputProcessingConfigurationRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::AddApplicationInputProcessingConfiguration, request); } /** * An Async wrapper for AddApplicationInputProcessingConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AddApplicationInputProcessingConfigurationAsync(const AddApplicationInputProcessingConfigurationRequestT& request, const AddApplicationInputProcessingConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::AddApplicationInputProcessingConfiguration, request, handler, context); } /** *

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.

Adds an external destination to your * Amazon Kinesis Analytics application.

If you want Amazon Kinesis * Analytics to deliver data from an in-application stream within your application * to an external destination (such as an Amazon Kinesis stream, an Amazon Kinesis * Firehose delivery stream, or an AWS Lambda function), you add the relevant * configuration to your application using this operation. You can configure one or * more outputs for your application. Each output configuration maps an * in-application stream and an external destination.

You can use one of * the output configurations to deliver data from your in-application error stream * to an external destination so that you can analyze the errors. For more * information, see Understanding * Application Output (Destination).

Any configuration update, * including adding a streaming source using this operation, results in a new * version of the application. You can use the DescribeApplication * operation to find the current application version.

For the limits on the * number of application inputs and outputs you can configure, see Limits.

*

This operation requires permissions to perform the * kinesisanalytics:AddApplicationOutput action.

See * Also:

AWS * API Reference

*/ virtual Model::AddApplicationOutputOutcome AddApplicationOutput(const Model::AddApplicationOutputRequest& request) const; /** * A Callable wrapper for AddApplicationOutput that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AddApplicationOutputOutcomeCallable AddApplicationOutputCallable(const AddApplicationOutputRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::AddApplicationOutput, request); } /** * An Async wrapper for AddApplicationOutput that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AddApplicationOutputAsync(const AddApplicationOutputRequestT& request, const AddApplicationOutputResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::AddApplicationOutput, request, handler, context); } /** *

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.

Adds a reference data source to an * existing application.

Amazon Kinesis Analytics reads reference data (that * is, an Amazon S3 object) and creates an in-application table within your * application. In the request, you provide the source (S3 bucket name and object * key name), name of the in-application table to create, and the necessary mapping * information that describes how data in Amazon S3 object maps to columns in the * resulting in-application table.

For conceptual information, see Configuring * Application Input. For the limits on data sources you can add to your * application, see Limits. *

This operation requires permissions to perform the * kinesisanalytics:AddApplicationOutput action.

See * Also:

AWS * API Reference

*/ virtual Model::AddApplicationReferenceDataSourceOutcome AddApplicationReferenceDataSource(const Model::AddApplicationReferenceDataSourceRequest& request) const; /** * A Callable wrapper for AddApplicationReferenceDataSource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AddApplicationReferenceDataSourceOutcomeCallable AddApplicationReferenceDataSourceCallable(const AddApplicationReferenceDataSourceRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::AddApplicationReferenceDataSource, request); } /** * An Async wrapper for AddApplicationReferenceDataSource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AddApplicationReferenceDataSourceAsync(const AddApplicationReferenceDataSourceRequestT& request, const AddApplicationReferenceDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::AddApplicationReferenceDataSource, request, handler, context); } /** *

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.

Creates an Amazon Kinesis Analytics * application. You can configure each application with one streaming source as * input, application code to process the input, and up to three destinations where * you want Amazon Kinesis Analytics to write the output data from your * application. For an overview, see How * it Works.

In the input configuration, you map the streaming source * to an in-application stream, which you can think of as a constantly updating * table. In the mapping, you must provide a schema for the in-application stream * and map each data column in the in-application stream to a data element in the * streaming source.

Your application code is one or more SQL statements * that read input data, transform it, and generate output. Your application code * can create one or more SQL artifacts like SQL streams or pumps.

In the * output configuration, you can configure the application to write data from * in-application streams created in your applications to up to three * destinations.

To read data from your source stream or write data to * destination streams, Amazon Kinesis Analytics needs your permissions. You grant * these permissions by creating IAM roles. This operation requires permissions to * perform the kinesisanalytics:CreateApplication action.

For * introductory exercises to create an Amazon Kinesis Analytics application, see Getting * Started.

See Also:

AWS * API Reference

*/ virtual Model::CreateApplicationOutcome CreateApplication(const Model::CreateApplicationRequest& request) const; /** * A Callable wrapper for CreateApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateApplicationOutcomeCallable CreateApplicationCallable(const CreateApplicationRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::CreateApplication, request); } /** * An Async wrapper for CreateApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateApplicationAsync(const CreateApplicationRequestT& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::CreateApplication, request, handler, context); } /** *

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.

Deletes the specified application. * Amazon Kinesis Analytics halts application execution and deletes the * application, including any application artifacts (such as in-application * streams, reference table, and application code).

This operation requires * permissions to perform the kinesisanalytics:DeleteApplication * action.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApplicationOutcome DeleteApplication(const Model::DeleteApplicationRequest& request) const; /** * A Callable wrapper for DeleteApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteApplicationOutcomeCallable DeleteApplicationCallable(const DeleteApplicationRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::DeleteApplication, request); } /** * An Async wrapper for DeleteApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteApplicationAsync(const DeleteApplicationRequestT& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::DeleteApplication, request, handler, context); } /** *

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.

Deletes a CloudWatch log stream from an * application. For more information about using CloudWatch log streams with Amazon * Kinesis Analytics applications, see Working * with Amazon CloudWatch Logs.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApplicationCloudWatchLoggingOptionOutcome DeleteApplicationCloudWatchLoggingOption(const Model::DeleteApplicationCloudWatchLoggingOptionRequest& request) const; /** * A Callable wrapper for DeleteApplicationCloudWatchLoggingOption that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteApplicationCloudWatchLoggingOptionOutcomeCallable DeleteApplicationCloudWatchLoggingOptionCallable(const DeleteApplicationCloudWatchLoggingOptionRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::DeleteApplicationCloudWatchLoggingOption, request); } /** * An Async wrapper for DeleteApplicationCloudWatchLoggingOption that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteApplicationCloudWatchLoggingOptionAsync(const DeleteApplicationCloudWatchLoggingOptionRequestT& request, const DeleteApplicationCloudWatchLoggingOptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::DeleteApplicationCloudWatchLoggingOption, request, handler, context); } /** *

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.

Deletes an InputProcessingConfiguration * from an input.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApplicationInputProcessingConfigurationOutcome DeleteApplicationInputProcessingConfiguration(const Model::DeleteApplicationInputProcessingConfigurationRequest& request) const; /** * A Callable wrapper for DeleteApplicationInputProcessingConfiguration that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteApplicationInputProcessingConfigurationOutcomeCallable DeleteApplicationInputProcessingConfigurationCallable(const DeleteApplicationInputProcessingConfigurationRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::DeleteApplicationInputProcessingConfiguration, request); } /** * An Async wrapper for DeleteApplicationInputProcessingConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteApplicationInputProcessingConfigurationAsync(const DeleteApplicationInputProcessingConfigurationRequestT& request, const DeleteApplicationInputProcessingConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::DeleteApplicationInputProcessingConfiguration, request, handler, context); } /** *

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.

Deletes output destination * configuration from your application configuration. Amazon Kinesis Analytics will * no longer write data from the corresponding in-application stream to the * external output destination.

This operation requires permissions to * perform the kinesisanalytics:DeleteApplicationOutput * action.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApplicationOutputOutcome DeleteApplicationOutput(const Model::DeleteApplicationOutputRequest& request) const; /** * A Callable wrapper for DeleteApplicationOutput that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteApplicationOutputOutcomeCallable DeleteApplicationOutputCallable(const DeleteApplicationOutputRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::DeleteApplicationOutput, request); } /** * An Async wrapper for DeleteApplicationOutput that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteApplicationOutputAsync(const DeleteApplicationOutputRequestT& request, const DeleteApplicationOutputResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::DeleteApplicationOutput, request, handler, context); } /** *

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.

Deletes a reference data source * configuration from the specified application configuration.

If the * application is running, Amazon Kinesis Analytics immediately removes the * in-application table that you created using the AddApplicationReferenceDataSource * operation.

This operation requires permissions to perform the * kinesisanalytics.DeleteApplicationReferenceDataSource * action.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApplicationReferenceDataSourceOutcome DeleteApplicationReferenceDataSource(const Model::DeleteApplicationReferenceDataSourceRequest& request) const; /** * A Callable wrapper for DeleteApplicationReferenceDataSource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteApplicationReferenceDataSourceOutcomeCallable DeleteApplicationReferenceDataSourceCallable(const DeleteApplicationReferenceDataSourceRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::DeleteApplicationReferenceDataSource, request); } /** * An Async wrapper for DeleteApplicationReferenceDataSource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteApplicationReferenceDataSourceAsync(const DeleteApplicationReferenceDataSourceRequestT& request, const DeleteApplicationReferenceDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::DeleteApplicationReferenceDataSource, request, handler, context); } /** *

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.

Returns information about a specific * Amazon Kinesis Analytics application.

If you want to retrieve a list of * all applications in your account, use the ListApplications * operation.

This operation requires permissions to perform the * kinesisanalytics:DescribeApplication action. You can use * DescribeApplication to get the current application versionId, which * you need to call other operations such as Update.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeApplicationOutcome DescribeApplication(const Model::DescribeApplicationRequest& request) const; /** * A Callable wrapper for DescribeApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeApplicationOutcomeCallable DescribeApplicationCallable(const DescribeApplicationRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::DescribeApplication, request); } /** * An Async wrapper for DescribeApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeApplicationAsync(const DescribeApplicationRequestT& request, const DescribeApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::DescribeApplication, request, handler, context); } /** *

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.

Infers a schema by evaluating sample * records on the specified streaming source (Amazon Kinesis stream or Amazon * Kinesis Firehose delivery stream) or S3 object. In the response, the operation * returns the inferred schema and also the sample records that the operation used * to infer the schema.

You can use the inferred schema when configuring a * streaming source for your application. For conceptual information, see Configuring * Application Input. Note that when you create an application using the Amazon * Kinesis Analytics console, the console uses this operation to infer a schema and * show it in the console user interface.

This operation requires * permissions to perform the kinesisanalytics:DiscoverInputSchema * action.

See Also:

AWS * API Reference

*/ virtual Model::DiscoverInputSchemaOutcome DiscoverInputSchema(const Model::DiscoverInputSchemaRequest& request) const; /** * A Callable wrapper for DiscoverInputSchema that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DiscoverInputSchemaOutcomeCallable DiscoverInputSchemaCallable(const DiscoverInputSchemaRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::DiscoverInputSchema, request); } /** * An Async wrapper for DiscoverInputSchema that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DiscoverInputSchemaAsync(const DiscoverInputSchemaRequestT& request, const DiscoverInputSchemaResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::DiscoverInputSchema, request, handler, context); } /** *

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.

Returns a list of Amazon Kinesis * Analytics applications in your account. For each application, the response * includes the application name, Amazon Resource Name (ARN), and status. If the * response returns the HasMoreApplications value as true, you can * send another request by adding the ExclusiveStartApplicationName in * the request body, and set the value of this to the last application name from * the previous response.

If you want detailed information about a specific * application, use DescribeApplication.

*

This operation requires permissions to perform the * kinesisanalytics:ListApplications action.

See Also:

* AWS * API Reference

*/ virtual Model::ListApplicationsOutcome ListApplications(const Model::ListApplicationsRequest& request) const; /** * A Callable wrapper for ListApplications that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListApplicationsOutcomeCallable ListApplicationsCallable(const ListApplicationsRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::ListApplications, request); } /** * An Async wrapper for ListApplications that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListApplicationsAsync(const ListApplicationsRequestT& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::ListApplications, request, handler, context); } /** *

Retrieves the list of key-value tags assigned to the application. For more * information, see Using * Tagging.

See Also:

AWS * API Reference

*/ virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; /** * A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::ListTagsForResource, request); } /** * An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::ListTagsForResource, request, handler, context); } /** *

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.

Starts the specified Amazon Kinesis * Analytics application. After creating an application, you must exclusively call * this operation to start your application.

After the application starts, * it begins consuming the input data, processes it, and writes the output to the * configured destination.

The application status must be * READY for you to start an application. You can get the application * status in the console or using the DescribeApplication * operation.

After you start the application, you can stop the application * from processing the input by calling the StopApplication * operation.

This operation requires permissions to perform the * kinesisanalytics:StartApplication action.

See Also:

* AWS * API Reference

*/ virtual Model::StartApplicationOutcome StartApplication(const Model::StartApplicationRequest& request) const; /** * A Callable wrapper for StartApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartApplicationOutcomeCallable StartApplicationCallable(const StartApplicationRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::StartApplication, request); } /** * An Async wrapper for StartApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartApplicationAsync(const StartApplicationRequestT& request, const StartApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::StartApplication, request, handler, context); } /** *

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.

Stops the application from processing * input data. You can stop an application only if it is in the running state. You * can use the DescribeApplication * operation to find the application state. After the application is stopped, * Amazon Kinesis Analytics stops reading data from the input, the application * stops processing data, and there is no output written to the destination.

*

This operation requires permissions to perform the * kinesisanalytics:StopApplication action.

See Also:

* AWS * API Reference

*/ virtual Model::StopApplicationOutcome StopApplication(const Model::StopApplicationRequest& request) const; /** * A Callable wrapper for StopApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StopApplicationOutcomeCallable StopApplicationCallable(const StopApplicationRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::StopApplication, request); } /** * An Async wrapper for StopApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StopApplicationAsync(const StopApplicationRequestT& request, const StopApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::StopApplication, request, handler, context); } /** *

Adds one or more key-value tags to a Kinesis Analytics 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.

See Also:

AWS * API Reference

*/ virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; /** * A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::TagResource, request); } /** * An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::TagResource, request, handler, context); } /** *

Removes one or more tags from a Kinesis Analytics application. For more * information, see Using * Tagging.

See Also:

AWS * API Reference

*/ virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; /** * A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::UntagResource, request); } /** * An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::UntagResource, request, handler, context); } /** *

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.

Updates an existing Amazon Kinesis * Analytics application. Using this API, you can update application code, input * configuration, and output configuration.

Note that Amazon Kinesis * Analytics updates the CurrentApplicationVersionId each time you * update your application.

This operation requires permission for the * kinesisanalytics:UpdateApplication action.

See Also:

* AWS * API Reference

*/ virtual Model::UpdateApplicationOutcome UpdateApplication(const Model::UpdateApplicationRequest& request) const; /** * A Callable wrapper for UpdateApplication that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateApplicationOutcomeCallable UpdateApplicationCallable(const UpdateApplicationRequestT& request) const { return SubmitCallable(&KinesisAnalyticsClient::UpdateApplication, request); } /** * An Async wrapper for UpdateApplication that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateApplicationAsync(const UpdateApplicationRequestT& request, const UpdateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&KinesisAnalyticsClient::UpdateApplication, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const KinesisAnalyticsClientConfiguration& clientConfiguration); KinesisAnalyticsClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace KinesisAnalytics } // namespace Aws