AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
NewGatingRule.h
1
6#pragma once
7#include <aws/route53-recovery-control-config/Route53RecoveryControlConfig_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/route53-recovery-control-config/model/RuleConfig.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Route53RecoveryControlConfig
24{
25namespace Model
26{
27
34 {
35 public:
36 AWS_ROUTE53RECOVERYCONTROLCONFIG_API NewGatingRule();
37 AWS_ROUTE53RECOVERYCONTROLCONFIG_API NewGatingRule(Aws::Utils::Json::JsonView jsonValue);
38 AWS_ROUTE53RECOVERYCONTROLCONFIG_API NewGatingRule& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_ROUTE53RECOVERYCONTROLCONFIG_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline const Aws::String& GetControlPanelArn() const{ return m_controlPanelArn; }
47 inline bool ControlPanelArnHasBeenSet() const { return m_controlPanelArnHasBeenSet; }
48 inline void SetControlPanelArn(const Aws::String& value) { m_controlPanelArnHasBeenSet = true; m_controlPanelArn = value; }
49 inline void SetControlPanelArn(Aws::String&& value) { m_controlPanelArnHasBeenSet = true; m_controlPanelArn = std::move(value); }
50 inline void SetControlPanelArn(const char* value) { m_controlPanelArnHasBeenSet = true; m_controlPanelArn.assign(value); }
51 inline NewGatingRule& WithControlPanelArn(const Aws::String& value) { SetControlPanelArn(value); return *this;}
52 inline NewGatingRule& WithControlPanelArn(Aws::String&& value) { SetControlPanelArn(std::move(value)); return *this;}
53 inline NewGatingRule& WithControlPanelArn(const char* value) { SetControlPanelArn(value); return *this;}
55
57
61 inline const Aws::Vector<Aws::String>& GetGatingControls() const{ return m_gatingControls; }
62 inline bool GatingControlsHasBeenSet() const { return m_gatingControlsHasBeenSet; }
63 inline void SetGatingControls(const Aws::Vector<Aws::String>& value) { m_gatingControlsHasBeenSet = true; m_gatingControls = value; }
64 inline void SetGatingControls(Aws::Vector<Aws::String>&& value) { m_gatingControlsHasBeenSet = true; m_gatingControls = std::move(value); }
65 inline NewGatingRule& WithGatingControls(const Aws::Vector<Aws::String>& value) { SetGatingControls(value); return *this;}
66 inline NewGatingRule& WithGatingControls(Aws::Vector<Aws::String>&& value) { SetGatingControls(std::move(value)); return *this;}
67 inline NewGatingRule& AddGatingControls(const Aws::String& value) { m_gatingControlsHasBeenSet = true; m_gatingControls.push_back(value); return *this; }
68 inline NewGatingRule& AddGatingControls(Aws::String&& value) { m_gatingControlsHasBeenSet = true; m_gatingControls.push_back(std::move(value)); return *this; }
69 inline NewGatingRule& AddGatingControls(const char* value) { m_gatingControlsHasBeenSet = true; m_gatingControls.push_back(value); return *this; }
71
73
76 inline const Aws::String& GetName() const{ return m_name; }
77 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
78 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
79 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
80 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
81 inline NewGatingRule& WithName(const Aws::String& value) { SetName(value); return *this;}
82 inline NewGatingRule& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
83 inline NewGatingRule& WithName(const char* value) { SetName(value); return *this;}
85
87
92 inline const RuleConfig& GetRuleConfig() const{ return m_ruleConfig; }
93 inline bool RuleConfigHasBeenSet() const { return m_ruleConfigHasBeenSet; }
94 inline void SetRuleConfig(const RuleConfig& value) { m_ruleConfigHasBeenSet = true; m_ruleConfig = value; }
95 inline void SetRuleConfig(RuleConfig&& value) { m_ruleConfigHasBeenSet = true; m_ruleConfig = std::move(value); }
96 inline NewGatingRule& WithRuleConfig(const RuleConfig& value) { SetRuleConfig(value); return *this;}
97 inline NewGatingRule& WithRuleConfig(RuleConfig&& value) { SetRuleConfig(std::move(value)); return *this;}
99
101
112 inline const Aws::Vector<Aws::String>& GetTargetControls() const{ return m_targetControls; }
113 inline bool TargetControlsHasBeenSet() const { return m_targetControlsHasBeenSet; }
114 inline void SetTargetControls(const Aws::Vector<Aws::String>& value) { m_targetControlsHasBeenSet = true; m_targetControls = value; }
115 inline void SetTargetControls(Aws::Vector<Aws::String>&& value) { m_targetControlsHasBeenSet = true; m_targetControls = std::move(value); }
116 inline NewGatingRule& WithTargetControls(const Aws::Vector<Aws::String>& value) { SetTargetControls(value); return *this;}
117 inline NewGatingRule& WithTargetControls(Aws::Vector<Aws::String>&& value) { SetTargetControls(std::move(value)); return *this;}
118 inline NewGatingRule& AddTargetControls(const Aws::String& value) { m_targetControlsHasBeenSet = true; m_targetControls.push_back(value); return *this; }
119 inline NewGatingRule& AddTargetControls(Aws::String&& value) { m_targetControlsHasBeenSet = true; m_targetControls.push_back(std::move(value)); return *this; }
120 inline NewGatingRule& AddTargetControls(const char* value) { m_targetControlsHasBeenSet = true; m_targetControls.push_back(value); return *this; }
122
124
129 inline int GetWaitPeriodMs() const{ return m_waitPeriodMs; }
130 inline bool WaitPeriodMsHasBeenSet() const { return m_waitPeriodMsHasBeenSet; }
131 inline void SetWaitPeriodMs(int value) { m_waitPeriodMsHasBeenSet = true; m_waitPeriodMs = value; }
132 inline NewGatingRule& WithWaitPeriodMs(int value) { SetWaitPeriodMs(value); return *this;}
134 private:
135
136 Aws::String m_controlPanelArn;
137 bool m_controlPanelArnHasBeenSet = false;
138
139 Aws::Vector<Aws::String> m_gatingControls;
140 bool m_gatingControlsHasBeenSet = false;
141
142 Aws::String m_name;
143 bool m_nameHasBeenSet = false;
144
145 RuleConfig m_ruleConfig;
146 bool m_ruleConfigHasBeenSet = false;
147
148 Aws::Vector<Aws::String> m_targetControls;
149 bool m_targetControlsHasBeenSet = false;
150
151 int m_waitPeriodMs;
152 bool m_waitPeriodMsHasBeenSet = false;
153 };
154
155} // namespace Model
156} // namespace Route53RecoveryControlConfig
157} // namespace Aws
AWS_ROUTE53RECOVERYCONTROLCONFIG_API NewGatingRule()
const Aws::Vector< Aws::String > & GetTargetControls() const
NewGatingRule & WithControlPanelArn(const char *value)
AWS_ROUTE53RECOVERYCONTROLCONFIG_API NewGatingRule & operator=(Aws::Utils::Json::JsonView jsonValue)
NewGatingRule & WithControlPanelArn(Aws::String &&value)
void SetTargetControls(const Aws::Vector< Aws::String > &value)
NewGatingRule & AddGatingControls(const char *value)
NewGatingRule & WithRuleConfig(const RuleConfig &value)
NewGatingRule & WithGatingControls(Aws::Vector< Aws::String > &&value)
AWS_ROUTE53RECOVERYCONTROLCONFIG_API Aws::Utils::Json::JsonValue Jsonize() const
NewGatingRule & WithTargetControls(Aws::Vector< Aws::String > &&value)
NewGatingRule & AddGatingControls(const Aws::String &value)
NewGatingRule & WithName(const Aws::String &value)
NewGatingRule & AddTargetControls(Aws::String &&value)
NewGatingRule & WithName(Aws::String &&value)
AWS_ROUTE53RECOVERYCONTROLCONFIG_API NewGatingRule(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetGatingControls() const
NewGatingRule & AddGatingControls(Aws::String &&value)
NewGatingRule & AddTargetControls(const Aws::String &value)
NewGatingRule & WithGatingControls(const Aws::Vector< Aws::String > &value)
void SetGatingControls(const Aws::Vector< Aws::String > &value)
void SetTargetControls(Aws::Vector< Aws::String > &&value)
NewGatingRule & WithRuleConfig(RuleConfig &&value)
void SetGatingControls(Aws::Vector< Aws::String > &&value)
NewGatingRule & WithControlPanelArn(const Aws::String &value)
NewGatingRule & WithTargetControls(const Aws::Vector< Aws::String > &value)
NewGatingRule & AddTargetControls(const char *value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue