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

Defines a failure policy.

See Also:

AWS * API Reference

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

The Recovery Point Objective (RPO), in seconds.

*/ inline int GetRpoInSecs() const{ return m_rpoInSecs; } /** *

The Recovery Point Objective (RPO), in seconds.

*/ inline bool RpoInSecsHasBeenSet() const { return m_rpoInSecsHasBeenSet; } /** *

The Recovery Point Objective (RPO), in seconds.

*/ inline void SetRpoInSecs(int value) { m_rpoInSecsHasBeenSet = true; m_rpoInSecs = value; } /** *

The Recovery Point Objective (RPO), in seconds.

*/ inline FailurePolicy& WithRpoInSecs(int value) { SetRpoInSecs(value); return *this;} /** *

The Recovery Time Objective (RTO), in seconds.

*/ inline int GetRtoInSecs() const{ return m_rtoInSecs; } /** *

The Recovery Time Objective (RTO), in seconds.

*/ inline bool RtoInSecsHasBeenSet() const { return m_rtoInSecsHasBeenSet; } /** *

The Recovery Time Objective (RTO), in seconds.

*/ inline void SetRtoInSecs(int value) { m_rtoInSecsHasBeenSet = true; m_rtoInSecs = value; } /** *

The Recovery Time Objective (RTO), in seconds.

*/ inline FailurePolicy& WithRtoInSecs(int value) { SetRtoInSecs(value); return *this;} private: int m_rpoInSecs; bool m_rpoInSecsHasBeenSet = false; int m_rtoInSecs; bool m_rtoInSecsHasBeenSet = false; }; } // namespace Model } // namespace ResilienceHub } // namespace Aws