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

This property corresponds to the AWS CloudFormation RollbackConfiguration * Data Type.

See Also:

AWS * API Reference

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

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline int GetMonitoringTimeInMinutes() const{ return m_monitoringTimeInMinutes; } /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline bool MonitoringTimeInMinutesHasBeenSet() const { return m_monitoringTimeInMinutesHasBeenSet; } /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline void SetMonitoringTimeInMinutes(int value) { m_monitoringTimeInMinutesHasBeenSet = true; m_monitoringTimeInMinutes = value; } /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline RollbackConfiguration& WithMonitoringTimeInMinutes(int value) { SetMonitoringTimeInMinutes(value); return *this;} /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline const Aws::Vector& GetRollbackTriggers() const{ return m_rollbackTriggers; } /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline bool RollbackTriggersHasBeenSet() const { return m_rollbackTriggersHasBeenSet; } /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline void SetRollbackTriggers(const Aws::Vector& value) { m_rollbackTriggersHasBeenSet = true; m_rollbackTriggers = value; } /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline void SetRollbackTriggers(Aws::Vector&& value) { m_rollbackTriggersHasBeenSet = true; m_rollbackTriggers = std::move(value); } /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline RollbackConfiguration& WithRollbackTriggers(const Aws::Vector& value) { SetRollbackTriggers(value); return *this;} /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline RollbackConfiguration& WithRollbackTriggers(Aws::Vector&& value) { SetRollbackTriggers(std::move(value)); return *this;} /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline RollbackConfiguration& AddRollbackTriggers(const RollbackTrigger& value) { m_rollbackTriggersHasBeenSet = true; m_rollbackTriggers.push_back(value); return *this; } /** *

This property corresponds to the content of the same name for the AWS * CloudFormation RollbackConfiguration * Data Type.

*/ inline RollbackConfiguration& AddRollbackTriggers(RollbackTrigger&& value) { m_rollbackTriggersHasBeenSet = true; m_rollbackTriggers.push_back(std::move(value)); return *this; } private: int m_monitoringTimeInMinutes; bool m_monitoringTimeInMinutesHasBeenSet = false; Aws::Vector m_rollbackTriggers; bool m_rollbackTriggersHasBeenSet = false; }; } // namespace Model } // namespace ServerlessApplicationRepository } // namespace Aws