/** * 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 Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace AppConfig { namespace Model { /** *

Information about the deployment.

See Also:

AWS * API Reference

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

The sequence number of the deployment.

*/ inline int GetDeploymentNumber() const{ return m_deploymentNumber; } /** *

The sequence number of the deployment.

*/ inline bool DeploymentNumberHasBeenSet() const { return m_deploymentNumberHasBeenSet; } /** *

The sequence number of the deployment.

*/ inline void SetDeploymentNumber(int value) { m_deploymentNumberHasBeenSet = true; m_deploymentNumber = value; } /** *

The sequence number of the deployment.

*/ inline DeploymentSummary& WithDeploymentNumber(int value) { SetDeploymentNumber(value); return *this;} /** *

The name of the configuration.

*/ inline const Aws::String& GetConfigurationName() const{ return m_configurationName; } /** *

The name of the configuration.

*/ inline bool ConfigurationNameHasBeenSet() const { return m_configurationNameHasBeenSet; } /** *

The name of the configuration.

*/ inline void SetConfigurationName(const Aws::String& value) { m_configurationNameHasBeenSet = true; m_configurationName = value; } /** *

The name of the configuration.

*/ inline void SetConfigurationName(Aws::String&& value) { m_configurationNameHasBeenSet = true; m_configurationName = std::move(value); } /** *

The name of the configuration.

*/ inline void SetConfigurationName(const char* value) { m_configurationNameHasBeenSet = true; m_configurationName.assign(value); } /** *

The name of the configuration.

*/ inline DeploymentSummary& WithConfigurationName(const Aws::String& value) { SetConfigurationName(value); return *this;} /** *

The name of the configuration.

*/ inline DeploymentSummary& WithConfigurationName(Aws::String&& value) { SetConfigurationName(std::move(value)); return *this;} /** *

The name of the configuration.

*/ inline DeploymentSummary& WithConfigurationName(const char* value) { SetConfigurationName(value); return *this;} /** *

The version of the configuration.

*/ inline const Aws::String& GetConfigurationVersion() const{ return m_configurationVersion; } /** *

The version of the configuration.

*/ inline bool ConfigurationVersionHasBeenSet() const { return m_configurationVersionHasBeenSet; } /** *

The version of the configuration.

*/ inline void SetConfigurationVersion(const Aws::String& value) { m_configurationVersionHasBeenSet = true; m_configurationVersion = value; } /** *

The version of the configuration.

*/ inline void SetConfigurationVersion(Aws::String&& value) { m_configurationVersionHasBeenSet = true; m_configurationVersion = std::move(value); } /** *

The version of the configuration.

*/ inline void SetConfigurationVersion(const char* value) { m_configurationVersionHasBeenSet = true; m_configurationVersion.assign(value); } /** *

The version of the configuration.

*/ inline DeploymentSummary& WithConfigurationVersion(const Aws::String& value) { SetConfigurationVersion(value); return *this;} /** *

The version of the configuration.

*/ inline DeploymentSummary& WithConfigurationVersion(Aws::String&& value) { SetConfigurationVersion(std::move(value)); return *this;} /** *

The version of the configuration.

*/ inline DeploymentSummary& WithConfigurationVersion(const char* value) { SetConfigurationVersion(value); return *this;} /** *

Total amount of time the deployment lasted.

*/ inline int GetDeploymentDurationInMinutes() const{ return m_deploymentDurationInMinutes; } /** *

Total amount of time the deployment lasted.

*/ inline bool DeploymentDurationInMinutesHasBeenSet() const { return m_deploymentDurationInMinutesHasBeenSet; } /** *

Total amount of time the deployment lasted.

*/ inline void SetDeploymentDurationInMinutes(int value) { m_deploymentDurationInMinutesHasBeenSet = true; m_deploymentDurationInMinutes = value; } /** *

Total amount of time the deployment lasted.

*/ inline DeploymentSummary& WithDeploymentDurationInMinutes(int value) { SetDeploymentDurationInMinutes(value); return *this;} /** *

The algorithm used to define how percentage grows over time.

*/ inline const GrowthType& GetGrowthType() const{ return m_growthType; } /** *

The algorithm used to define how percentage grows over time.

*/ inline bool GrowthTypeHasBeenSet() const { return m_growthTypeHasBeenSet; } /** *

The algorithm used to define how percentage grows over time.

*/ inline void SetGrowthType(const GrowthType& value) { m_growthTypeHasBeenSet = true; m_growthType = value; } /** *

The algorithm used to define how percentage grows over time.

*/ inline void SetGrowthType(GrowthType&& value) { m_growthTypeHasBeenSet = true; m_growthType = std::move(value); } /** *

The algorithm used to define how percentage grows over time.

*/ inline DeploymentSummary& WithGrowthType(const GrowthType& value) { SetGrowthType(value); return *this;} /** *

The algorithm used to define how percentage grows over time.

*/ inline DeploymentSummary& WithGrowthType(GrowthType&& value) { SetGrowthType(std::move(value)); return *this;} /** *

The percentage of targets to receive a deployed configuration during each * interval.

*/ inline double GetGrowthFactor() const{ return m_growthFactor; } /** *

The percentage of targets to receive a deployed configuration during each * interval.

*/ inline bool GrowthFactorHasBeenSet() const { return m_growthFactorHasBeenSet; } /** *

The percentage of targets to receive a deployed configuration during each * interval.

*/ inline void SetGrowthFactor(double value) { m_growthFactorHasBeenSet = true; m_growthFactor = value; } /** *

The percentage of targets to receive a deployed configuration during each * interval.

*/ inline DeploymentSummary& WithGrowthFactor(double value) { SetGrowthFactor(value); return *this;} /** *

The amount of time that AppConfig monitors for alarms before considering the * deployment to be complete and no longer eligible for automatic rollback.

*/ inline int GetFinalBakeTimeInMinutes() const{ return m_finalBakeTimeInMinutes; } /** *

The amount of time that AppConfig monitors for alarms before considering the * deployment to be complete and no longer eligible for automatic rollback.

*/ inline bool FinalBakeTimeInMinutesHasBeenSet() const { return m_finalBakeTimeInMinutesHasBeenSet; } /** *

The amount of time that AppConfig monitors for alarms before considering the * deployment to be complete and no longer eligible for automatic rollback.

*/ inline void SetFinalBakeTimeInMinutes(int value) { m_finalBakeTimeInMinutesHasBeenSet = true; m_finalBakeTimeInMinutes = value; } /** *

The amount of time that AppConfig monitors for alarms before considering the * deployment to be complete and no longer eligible for automatic rollback.

*/ inline DeploymentSummary& WithFinalBakeTimeInMinutes(int value) { SetFinalBakeTimeInMinutes(value); return *this;} /** *

The state of the deployment.

*/ inline const DeploymentState& GetState() const{ return m_state; } /** *

The state of the deployment.

*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *

The state of the deployment.

*/ inline void SetState(const DeploymentState& value) { m_stateHasBeenSet = true; m_state = value; } /** *

The state of the deployment.

*/ inline void SetState(DeploymentState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *

The state of the deployment.

*/ inline DeploymentSummary& WithState(const DeploymentState& value) { SetState(value); return *this;} /** *

The state of the deployment.

*/ inline DeploymentSummary& WithState(DeploymentState&& value) { SetState(std::move(value)); return *this;} /** *

The percentage of targets for which the deployment is available.

*/ inline double GetPercentageComplete() const{ return m_percentageComplete; } /** *

The percentage of targets for which the deployment is available.

*/ inline bool PercentageCompleteHasBeenSet() const { return m_percentageCompleteHasBeenSet; } /** *

The percentage of targets for which the deployment is available.

*/ inline void SetPercentageComplete(double value) { m_percentageCompleteHasBeenSet = true; m_percentageComplete = value; } /** *

The percentage of targets for which the deployment is available.

*/ inline DeploymentSummary& WithPercentageComplete(double value) { SetPercentageComplete(value); return *this;} /** *

Time the deployment started.

*/ inline const Aws::Utils::DateTime& GetStartedAt() const{ return m_startedAt; } /** *

Time the deployment started.

*/ inline bool StartedAtHasBeenSet() const { return m_startedAtHasBeenSet; } /** *

Time the deployment started.

*/ inline void SetStartedAt(const Aws::Utils::DateTime& value) { m_startedAtHasBeenSet = true; m_startedAt = value; } /** *

Time the deployment started.

*/ inline void SetStartedAt(Aws::Utils::DateTime&& value) { m_startedAtHasBeenSet = true; m_startedAt = std::move(value); } /** *

Time the deployment started.

*/ inline DeploymentSummary& WithStartedAt(const Aws::Utils::DateTime& value) { SetStartedAt(value); return *this;} /** *

Time the deployment started.

*/ inline DeploymentSummary& WithStartedAt(Aws::Utils::DateTime&& value) { SetStartedAt(std::move(value)); return *this;} /** *

Time the deployment completed.

*/ inline const Aws::Utils::DateTime& GetCompletedAt() const{ return m_completedAt; } /** *

Time the deployment completed.

*/ inline bool CompletedAtHasBeenSet() const { return m_completedAtHasBeenSet; } /** *

Time the deployment completed.

*/ inline void SetCompletedAt(const Aws::Utils::DateTime& value) { m_completedAtHasBeenSet = true; m_completedAt = value; } /** *

Time the deployment completed.

*/ inline void SetCompletedAt(Aws::Utils::DateTime&& value) { m_completedAtHasBeenSet = true; m_completedAt = std::move(value); } /** *

Time the deployment completed.

*/ inline DeploymentSummary& WithCompletedAt(const Aws::Utils::DateTime& value) { SetCompletedAt(value); return *this;} /** *

Time the deployment completed.

*/ inline DeploymentSummary& WithCompletedAt(Aws::Utils::DateTime&& value) { SetCompletedAt(std::move(value)); return *this;} private: int m_deploymentNumber; bool m_deploymentNumberHasBeenSet = false; Aws::String m_configurationName; bool m_configurationNameHasBeenSet = false; Aws::String m_configurationVersion; bool m_configurationVersionHasBeenSet = false; int m_deploymentDurationInMinutes; bool m_deploymentDurationInMinutesHasBeenSet = false; GrowthType m_growthType; bool m_growthTypeHasBeenSet = false; double m_growthFactor; bool m_growthFactorHasBeenSet = false; int m_finalBakeTimeInMinutes; bool m_finalBakeTimeInMinutesHasBeenSet = false; DeploymentState m_state; bool m_stateHasBeenSet = false; double m_percentageComplete; bool m_percentageCompleteHasBeenSet = false; Aws::Utils::DateTime m_startedAt; bool m_startedAtHasBeenSet = false; Aws::Utils::DateTime m_completedAt; bool m_completedAtHasBeenSet = false; }; } // namespace Model } // namespace AppConfig } // namespace Aws