/** * 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 Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace RDS { namespace Model { /** *

Shows the scaling configuration for an Aurora DB cluster in * serverless DB engine mode.

For more information, see Using * Amazon Aurora Serverless in the Amazon Aurora User * Guide.

See Also:

AWS * API Reference

*/ class AWS_RDS_API ScalingConfigurationInfo { public: ScalingConfigurationInfo(); ScalingConfigurationInfo(const Aws::Utils::Xml::XmlNode& xmlNode); ScalingConfigurationInfo& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The maximum capacity for the Aurora DB cluster in serverless DB * engine mode.

*/ inline int GetMinCapacity() const{ return m_minCapacity; } /** *

The maximum capacity for the Aurora DB cluster in serverless DB * engine mode.

*/ inline bool MinCapacityHasBeenSet() const { return m_minCapacityHasBeenSet; } /** *

The maximum capacity for the Aurora DB cluster in serverless DB * engine mode.

*/ inline void SetMinCapacity(int value) { m_minCapacityHasBeenSet = true; m_minCapacity = value; } /** *

The maximum capacity for the Aurora DB cluster in serverless DB * engine mode.

*/ inline ScalingConfigurationInfo& WithMinCapacity(int value) { SetMinCapacity(value); return *this;} /** *

The maximum capacity for an Aurora DB cluster in serverless DB * engine mode.

*/ inline int GetMaxCapacity() const{ return m_maxCapacity; } /** *

The maximum capacity for an Aurora DB cluster in serverless DB * engine mode.

*/ inline bool MaxCapacityHasBeenSet() const { return m_maxCapacityHasBeenSet; } /** *

The maximum capacity for an Aurora DB cluster in serverless DB * engine mode.

*/ inline void SetMaxCapacity(int value) { m_maxCapacityHasBeenSet = true; m_maxCapacity = value; } /** *

The maximum capacity for an Aurora DB cluster in serverless DB * engine mode.

*/ inline ScalingConfigurationInfo& WithMaxCapacity(int value) { SetMaxCapacity(value); return *this;} /** *

A value that indicates whether automatic pause is allowed for the Aurora DB * cluster in serverless DB engine mode.

When the value is set * to false for an Aurora Serverless DB cluster, the DB cluster automatically * resumes.

*/ inline bool GetAutoPause() const{ return m_autoPause; } /** *

A value that indicates whether automatic pause is allowed for the Aurora DB * cluster in serverless DB engine mode.

When the value is set * to false for an Aurora Serverless DB cluster, the DB cluster automatically * resumes.

*/ inline bool AutoPauseHasBeenSet() const { return m_autoPauseHasBeenSet; } /** *

A value that indicates whether automatic pause is allowed for the Aurora DB * cluster in serverless DB engine mode.

When the value is set * to false for an Aurora Serverless DB cluster, the DB cluster automatically * resumes.

*/ inline void SetAutoPause(bool value) { m_autoPauseHasBeenSet = true; m_autoPause = value; } /** *

A value that indicates whether automatic pause is allowed for the Aurora DB * cluster in serverless DB engine mode.

When the value is set * to false for an Aurora Serverless DB cluster, the DB cluster automatically * resumes.

*/ inline ScalingConfigurationInfo& WithAutoPause(bool value) { SetAutoPause(value); return *this;} /** *

The remaining amount of time, in seconds, before the Aurora DB cluster in * serverless mode is paused. A DB cluster can be paused only when * it's idle (it has no connections).

*/ inline int GetSecondsUntilAutoPause() const{ return m_secondsUntilAutoPause; } /** *

The remaining amount of time, in seconds, before the Aurora DB cluster in * serverless mode is paused. A DB cluster can be paused only when * it's idle (it has no connections).

*/ inline bool SecondsUntilAutoPauseHasBeenSet() const { return m_secondsUntilAutoPauseHasBeenSet; } /** *

The remaining amount of time, in seconds, before the Aurora DB cluster in * serverless mode is paused. A DB cluster can be paused only when * it's idle (it has no connections).

*/ inline void SetSecondsUntilAutoPause(int value) { m_secondsUntilAutoPauseHasBeenSet = true; m_secondsUntilAutoPause = value; } /** *

The remaining amount of time, in seconds, before the Aurora DB cluster in * serverless mode is paused. A DB cluster can be paused only when * it's idle (it has no connections).

*/ inline ScalingConfigurationInfo& WithSecondsUntilAutoPause(int value) { SetSecondsUntilAutoPause(value); return *this;} /** *

The timeout action of a call to ModifyCurrentDBClusterCapacity, * either ForceApplyCapacityChange or * RollbackCapacityChange.

*/ inline const Aws::String& GetTimeoutAction() const{ return m_timeoutAction; } /** *

The timeout action of a call to ModifyCurrentDBClusterCapacity, * either ForceApplyCapacityChange or * RollbackCapacityChange.

*/ inline bool TimeoutActionHasBeenSet() const { return m_timeoutActionHasBeenSet; } /** *

The timeout action of a call to ModifyCurrentDBClusterCapacity, * either ForceApplyCapacityChange or * RollbackCapacityChange.

*/ inline void SetTimeoutAction(const Aws::String& value) { m_timeoutActionHasBeenSet = true; m_timeoutAction = value; } /** *

The timeout action of a call to ModifyCurrentDBClusterCapacity, * either ForceApplyCapacityChange or * RollbackCapacityChange.

*/ inline void SetTimeoutAction(Aws::String&& value) { m_timeoutActionHasBeenSet = true; m_timeoutAction = std::move(value); } /** *

The timeout action of a call to ModifyCurrentDBClusterCapacity, * either ForceApplyCapacityChange or * RollbackCapacityChange.

*/ inline void SetTimeoutAction(const char* value) { m_timeoutActionHasBeenSet = true; m_timeoutAction.assign(value); } /** *

The timeout action of a call to ModifyCurrentDBClusterCapacity, * either ForceApplyCapacityChange or * RollbackCapacityChange.

*/ inline ScalingConfigurationInfo& WithTimeoutAction(const Aws::String& value) { SetTimeoutAction(value); return *this;} /** *

The timeout action of a call to ModifyCurrentDBClusterCapacity, * either ForceApplyCapacityChange or * RollbackCapacityChange.

*/ inline ScalingConfigurationInfo& WithTimeoutAction(Aws::String&& value) { SetTimeoutAction(std::move(value)); return *this;} /** *

The timeout action of a call to ModifyCurrentDBClusterCapacity, * either ForceApplyCapacityChange or * RollbackCapacityChange.

*/ inline ScalingConfigurationInfo& WithTimeoutAction(const char* value) { SetTimeoutAction(value); return *this;} private: int m_minCapacity; bool m_minCapacityHasBeenSet; int m_maxCapacity; bool m_maxCapacityHasBeenSet; bool m_autoPause; bool m_autoPauseHasBeenSet; int m_secondsUntilAutoPause; bool m_secondsUntilAutoPauseHasBeenSet; Aws::String m_timeoutAction; bool m_timeoutActionHasBeenSet; }; } // namespace Model } // namespace RDS } // namespace Aws