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

Describes updates to parameters for how an application executes multiple * tasks simultaneously.

See Also:

AWS * API Reference

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

Describes updates to whether the application uses the default parallelism for * the Kinesis Data Analytics service, or if a custom parallelism is used. You must * set this property to CUSTOM in order to change your application's * AutoScalingEnabled, Parallelism, or * ParallelismPerKPU properties.

*/ inline const ConfigurationType& GetConfigurationTypeUpdate() const{ return m_configurationTypeUpdate; } /** *

Describes updates to whether the application uses the default parallelism for * the Kinesis Data Analytics service, or if a custom parallelism is used. You must * set this property to CUSTOM in order to change your application's * AutoScalingEnabled, Parallelism, or * ParallelismPerKPU properties.

*/ inline bool ConfigurationTypeUpdateHasBeenSet() const { return m_configurationTypeUpdateHasBeenSet; } /** *

Describes updates to whether the application uses the default parallelism for * the Kinesis Data Analytics service, or if a custom parallelism is used. You must * set this property to CUSTOM in order to change your application's * AutoScalingEnabled, Parallelism, or * ParallelismPerKPU properties.

*/ inline void SetConfigurationTypeUpdate(const ConfigurationType& value) { m_configurationTypeUpdateHasBeenSet = true; m_configurationTypeUpdate = value; } /** *

Describes updates to whether the application uses the default parallelism for * the Kinesis Data Analytics service, or if a custom parallelism is used. You must * set this property to CUSTOM in order to change your application's * AutoScalingEnabled, Parallelism, or * ParallelismPerKPU properties.

*/ inline void SetConfigurationTypeUpdate(ConfigurationType&& value) { m_configurationTypeUpdateHasBeenSet = true; m_configurationTypeUpdate = std::move(value); } /** *

Describes updates to whether the application uses the default parallelism for * the Kinesis Data Analytics service, or if a custom parallelism is used. You must * set this property to CUSTOM in order to change your application's * AutoScalingEnabled, Parallelism, or * ParallelismPerKPU properties.

*/ inline ParallelismConfigurationUpdate& WithConfigurationTypeUpdate(const ConfigurationType& value) { SetConfigurationTypeUpdate(value); return *this;} /** *

Describes updates to whether the application uses the default parallelism for * the Kinesis Data Analytics service, or if a custom parallelism is used. You must * set this property to CUSTOM in order to change your application's * AutoScalingEnabled, Parallelism, or * ParallelismPerKPU properties.

*/ inline ParallelismConfigurationUpdate& WithConfigurationTypeUpdate(ConfigurationType&& value) { SetConfigurationTypeUpdate(std::move(value)); return *this;} /** *

Describes updates to the initial number of parallel tasks an application can * perform. If AutoScalingEnabled is set to True, then Kinesis Data * Analytics can increase the CurrentParallelism value in response to * application load. The service can increase CurrentParallelism up to * the maximum parallelism, which is ParalellismPerKPU times the * maximum KPUs for the application. The maximum KPUs for an application is 32 by * default, and can be increased by requesting a limit increase. If application * load is reduced, the service will reduce CurrentParallelism down to * the Parallelism setting.

*/ inline int GetParallelismUpdate() const{ return m_parallelismUpdate; } /** *

Describes updates to the initial number of parallel tasks an application can * perform. If AutoScalingEnabled is set to True, then Kinesis Data * Analytics can increase the CurrentParallelism value in response to * application load. The service can increase CurrentParallelism up to * the maximum parallelism, which is ParalellismPerKPU times the * maximum KPUs for the application. The maximum KPUs for an application is 32 by * default, and can be increased by requesting a limit increase. If application * load is reduced, the service will reduce CurrentParallelism down to * the Parallelism setting.

*/ inline bool ParallelismUpdateHasBeenSet() const { return m_parallelismUpdateHasBeenSet; } /** *

Describes updates to the initial number of parallel tasks an application can * perform. If AutoScalingEnabled is set to True, then Kinesis Data * Analytics can increase the CurrentParallelism value in response to * application load. The service can increase CurrentParallelism up to * the maximum parallelism, which is ParalellismPerKPU times the * maximum KPUs for the application. The maximum KPUs for an application is 32 by * default, and can be increased by requesting a limit increase. If application * load is reduced, the service will reduce CurrentParallelism down to * the Parallelism setting.

*/ inline void SetParallelismUpdate(int value) { m_parallelismUpdateHasBeenSet = true; m_parallelismUpdate = value; } /** *

Describes updates to the initial number of parallel tasks an application can * perform. If AutoScalingEnabled is set to True, then Kinesis Data * Analytics can increase the CurrentParallelism value in response to * application load. The service can increase CurrentParallelism up to * the maximum parallelism, which is ParalellismPerKPU times the * maximum KPUs for the application. The maximum KPUs for an application is 32 by * default, and can be increased by requesting a limit increase. If application * load is reduced, the service will reduce CurrentParallelism down to * the Parallelism setting.

*/ inline ParallelismConfigurationUpdate& WithParallelismUpdate(int value) { SetParallelismUpdate(value); return *this;} /** *

Describes updates to the number of parallel tasks an application can perform * per Kinesis Processing Unit (KPU) used by the application.

*/ inline int GetParallelismPerKPUUpdate() const{ return m_parallelismPerKPUUpdate; } /** *

Describes updates to the number of parallel tasks an application can perform * per Kinesis Processing Unit (KPU) used by the application.

*/ inline bool ParallelismPerKPUUpdateHasBeenSet() const { return m_parallelismPerKPUUpdateHasBeenSet; } /** *

Describes updates to the number of parallel tasks an application can perform * per Kinesis Processing Unit (KPU) used by the application.

*/ inline void SetParallelismPerKPUUpdate(int value) { m_parallelismPerKPUUpdateHasBeenSet = true; m_parallelismPerKPUUpdate = value; } /** *

Describes updates to the number of parallel tasks an application can perform * per Kinesis Processing Unit (KPU) used by the application.

*/ inline ParallelismConfigurationUpdate& WithParallelismPerKPUUpdate(int value) { SetParallelismPerKPUUpdate(value); return *this;} /** *

Describes updates to whether the Kinesis Data Analytics service can increase * the parallelism of a Flink-based Kinesis Data Analytics application in response * to increased throughput.

*/ inline bool GetAutoScalingEnabledUpdate() const{ return m_autoScalingEnabledUpdate; } /** *

Describes updates to whether the Kinesis Data Analytics service can increase * the parallelism of a Flink-based Kinesis Data Analytics application in response * to increased throughput.

*/ inline bool AutoScalingEnabledUpdateHasBeenSet() const { return m_autoScalingEnabledUpdateHasBeenSet; } /** *

Describes updates to whether the Kinesis Data Analytics service can increase * the parallelism of a Flink-based Kinesis Data Analytics application in response * to increased throughput.

*/ inline void SetAutoScalingEnabledUpdate(bool value) { m_autoScalingEnabledUpdateHasBeenSet = true; m_autoScalingEnabledUpdate = value; } /** *

Describes updates to whether the Kinesis Data Analytics service can increase * the parallelism of a Flink-based Kinesis Data Analytics application in response * to increased throughput.

*/ inline ParallelismConfigurationUpdate& WithAutoScalingEnabledUpdate(bool value) { SetAutoScalingEnabledUpdate(value); return *this;} private: ConfigurationType m_configurationTypeUpdate; bool m_configurationTypeUpdateHasBeenSet = false; int m_parallelismUpdate; bool m_parallelismUpdateHasBeenSet = false; int m_parallelismPerKPUUpdate; bool m_parallelismPerKPUUpdateHasBeenSet = false; bool m_autoScalingEnabledUpdate; bool m_autoScalingEnabledUpdateHasBeenSet = false; }; } // namespace Model } // namespace KinesisAnalyticsV2 } // namespace Aws