/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A routing control, which is a simple on/off switch that you can use to route
* traffic to cells. When a routing control state is On, traffic flows to a cell.
* When the state is Off, traffic does not flow. See Also:
AWS
* API Reference
The Amazon Resource Name (ARN) of the control panel where the routing control * is located.
*/ inline const Aws::String& GetControlPanelArn() const{ return m_controlPanelArn; } /** *The Amazon Resource Name (ARN) of the control panel where the routing control * is located.
*/ inline bool ControlPanelArnHasBeenSet() const { return m_controlPanelArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the control panel where the routing control * is located.
*/ inline void SetControlPanelArn(const Aws::String& value) { m_controlPanelArnHasBeenSet = true; m_controlPanelArn = value; } /** *The Amazon Resource Name (ARN) of the control panel where the routing control * is located.
*/ inline void SetControlPanelArn(Aws::String&& value) { m_controlPanelArnHasBeenSet = true; m_controlPanelArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the control panel where the routing control * is located.
*/ inline void SetControlPanelArn(const char* value) { m_controlPanelArnHasBeenSet = true; m_controlPanelArn.assign(value); } /** *The Amazon Resource Name (ARN) of the control panel where the routing control * is located.
*/ inline RoutingControl& WithControlPanelArn(const Aws::String& value) { SetControlPanelArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the control panel where the routing control * is located.
*/ inline RoutingControl& WithControlPanelArn(Aws::String&& value) { SetControlPanelArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the control panel where the routing control * is located.
*/ inline RoutingControl& WithControlPanelArn(const char* value) { SetControlPanelArn(value); return *this;} /** *The name of the control panel where the routing control is located.
*/ inline const Aws::String& GetControlPanelName() const{ return m_controlPanelName; } /** *The name of the control panel where the routing control is located.
*/ inline bool ControlPanelNameHasBeenSet() const { return m_controlPanelNameHasBeenSet; } /** *The name of the control panel where the routing control is located.
*/ inline void SetControlPanelName(const Aws::String& value) { m_controlPanelNameHasBeenSet = true; m_controlPanelName = value; } /** *The name of the control panel where the routing control is located.
*/ inline void SetControlPanelName(Aws::String&& value) { m_controlPanelNameHasBeenSet = true; m_controlPanelName = std::move(value); } /** *The name of the control panel where the routing control is located.
*/ inline void SetControlPanelName(const char* value) { m_controlPanelNameHasBeenSet = true; m_controlPanelName.assign(value); } /** *The name of the control panel where the routing control is located.
*/ inline RoutingControl& WithControlPanelName(const Aws::String& value) { SetControlPanelName(value); return *this;} /** *The name of the control panel where the routing control is located.
*/ inline RoutingControl& WithControlPanelName(Aws::String&& value) { SetControlPanelName(std::move(value)); return *this;} /** *The name of the control panel where the routing control is located.
*/ inline RoutingControl& WithControlPanelName(const char* value) { SetControlPanelName(value); return *this;} /** *The Amazon Resource Name (ARN) of the routing control.
*/ inline const Aws::String& GetRoutingControlArn() const{ return m_routingControlArn; } /** *The Amazon Resource Name (ARN) of the routing control.
*/ inline bool RoutingControlArnHasBeenSet() const { return m_routingControlArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the routing control.
*/ inline void SetRoutingControlArn(const Aws::String& value) { m_routingControlArnHasBeenSet = true; m_routingControlArn = value; } /** *The Amazon Resource Name (ARN) of the routing control.
*/ inline void SetRoutingControlArn(Aws::String&& value) { m_routingControlArnHasBeenSet = true; m_routingControlArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the routing control.
*/ inline void SetRoutingControlArn(const char* value) { m_routingControlArnHasBeenSet = true; m_routingControlArn.assign(value); } /** *The Amazon Resource Name (ARN) of the routing control.
*/ inline RoutingControl& WithRoutingControlArn(const Aws::String& value) { SetRoutingControlArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the routing control.
*/ inline RoutingControl& WithRoutingControlArn(Aws::String&& value) { SetRoutingControlArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the routing control.
*/ inline RoutingControl& WithRoutingControlArn(const char* value) { SetRoutingControlArn(value); return *this;} /** *The name of the routing control.
*/ inline const Aws::String& GetRoutingControlName() const{ return m_routingControlName; } /** *The name of the routing control.
*/ inline bool RoutingControlNameHasBeenSet() const { return m_routingControlNameHasBeenSet; } /** *The name of the routing control.
*/ inline void SetRoutingControlName(const Aws::String& value) { m_routingControlNameHasBeenSet = true; m_routingControlName = value; } /** *The name of the routing control.
*/ inline void SetRoutingControlName(Aws::String&& value) { m_routingControlNameHasBeenSet = true; m_routingControlName = std::move(value); } /** *The name of the routing control.
*/ inline void SetRoutingControlName(const char* value) { m_routingControlNameHasBeenSet = true; m_routingControlName.assign(value); } /** *The name of the routing control.
*/ inline RoutingControl& WithRoutingControlName(const Aws::String& value) { SetRoutingControlName(value); return *this;} /** *The name of the routing control.
*/ inline RoutingControl& WithRoutingControlName(Aws::String&& value) { SetRoutingControlName(std::move(value)); return *this;} /** *The name of the routing control.
*/ inline RoutingControl& WithRoutingControlName(const char* value) { SetRoutingControlName(value); return *this;} /** *The current state of the routing control. When a routing control state is On, * traffic flows to a cell. When the state is Off, traffic does not flow.
*/ inline const RoutingControlState& GetRoutingControlState() const{ return m_routingControlState; } /** *The current state of the routing control. When a routing control state is On, * traffic flows to a cell. When the state is Off, traffic does not flow.
*/ inline bool RoutingControlStateHasBeenSet() const { return m_routingControlStateHasBeenSet; } /** *The current state of the routing control. When a routing control state is On, * traffic flows to a cell. When the state is Off, traffic does not flow.
*/ inline void SetRoutingControlState(const RoutingControlState& value) { m_routingControlStateHasBeenSet = true; m_routingControlState = value; } /** *The current state of the routing control. When a routing control state is On, * traffic flows to a cell. When the state is Off, traffic does not flow.
*/ inline void SetRoutingControlState(RoutingControlState&& value) { m_routingControlStateHasBeenSet = true; m_routingControlState = std::move(value); } /** *The current state of the routing control. When a routing control state is On, * traffic flows to a cell. When the state is Off, traffic does not flow.
*/ inline RoutingControl& WithRoutingControlState(const RoutingControlState& value) { SetRoutingControlState(value); return *this;} /** *The current state of the routing control. When a routing control state is On, * traffic flows to a cell. When the state is Off, traffic does not flow.
*/ inline RoutingControl& WithRoutingControlState(RoutingControlState&& value) { SetRoutingControlState(std::move(value)); return *this;} private: Aws::String m_controlPanelArn; bool m_controlPanelArnHasBeenSet = false; Aws::String m_controlPanelName; bool m_controlPanelNameHasBeenSet = false; Aws::String m_routingControlArn; bool m_routingControlArnHasBeenSet = false; Aws::String m_routingControlName; bool m_routingControlNameHasBeenSet = false; RoutingControlState m_routingControlState; bool m_routingControlStateHasBeenSet = false; }; } // namespace Model } // namespace Route53RecoveryCluster } // namespace Aws