AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
CreateRuleRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/datazone/DataZoneRequest.h>
10#include <aws/datazone/DataZone_EXPORTS.h>
11#include <aws/datazone/model/RuleAction.h>
12#include <aws/datazone/model/RuleDetail.h>
13#include <aws/datazone/model/RuleScope.h>
14#include <aws/datazone/model/RuleTarget.h>
15
16#include <utility>
17
18namespace Aws {
19namespace DataZone {
20namespace Model {
21
25 public:
26 AWS_DATAZONE_API CreateRuleRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateRule"; }
33
34 AWS_DATAZONE_API Aws::String SerializePayload() const override;
35
37
40 inline const Aws::String& GetDomainIdentifier() const { return m_domainIdentifier; }
41 inline bool DomainIdentifierHasBeenSet() const { return m_domainIdentifierHasBeenSet; }
42 template <typename DomainIdentifierT = Aws::String>
43 void SetDomainIdentifier(DomainIdentifierT&& value) {
44 m_domainIdentifierHasBeenSet = true;
45 m_domainIdentifier = std::forward<DomainIdentifierT>(value);
46 }
47 template <typename DomainIdentifierT = Aws::String>
48 CreateRuleRequest& WithDomainIdentifier(DomainIdentifierT&& value) {
49 SetDomainIdentifier(std::forward<DomainIdentifierT>(value));
50 return *this;
51 }
53
55
58 inline const Aws::String& GetName() const { return m_name; }
59 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
60 template <typename NameT = Aws::String>
61 void SetName(NameT&& value) {
62 m_nameHasBeenSet = true;
63 m_name = std::forward<NameT>(value);
64 }
65 template <typename NameT = Aws::String>
66 CreateRuleRequest& WithName(NameT&& value) {
67 SetName(std::forward<NameT>(value));
68 return *this;
69 }
71
73
76 inline const RuleTarget& GetTarget() const { return m_target; }
77 inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; }
78 template <typename TargetT = RuleTarget>
79 void SetTarget(TargetT&& value) {
80 m_targetHasBeenSet = true;
81 m_target = std::forward<TargetT>(value);
82 }
83 template <typename TargetT = RuleTarget>
84 CreateRuleRequest& WithTarget(TargetT&& value) {
85 SetTarget(std::forward<TargetT>(value));
86 return *this;
87 }
89
91
94 inline RuleAction GetAction() const { return m_action; }
95 inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; }
96 inline void SetAction(RuleAction value) {
97 m_actionHasBeenSet = true;
98 m_action = value;
99 }
101 SetAction(value);
102 return *this;
103 }
105
107
110 inline const RuleScope& GetScope() const { return m_scope; }
111 inline bool ScopeHasBeenSet() const { return m_scopeHasBeenSet; }
112 template <typename ScopeT = RuleScope>
113 void SetScope(ScopeT&& value) {
114 m_scopeHasBeenSet = true;
115 m_scope = std::forward<ScopeT>(value);
116 }
117 template <typename ScopeT = RuleScope>
118 CreateRuleRequest& WithScope(ScopeT&& value) {
119 SetScope(std::forward<ScopeT>(value));
120 return *this;
121 }
123
125
128 inline const RuleDetail& GetDetail() const { return m_detail; }
129 inline bool DetailHasBeenSet() const { return m_detailHasBeenSet; }
130 template <typename DetailT = RuleDetail>
131 void SetDetail(DetailT&& value) {
132 m_detailHasBeenSet = true;
133 m_detail = std::forward<DetailT>(value);
134 }
135 template <typename DetailT = RuleDetail>
136 CreateRuleRequest& WithDetail(DetailT&& value) {
137 SetDetail(std::forward<DetailT>(value));
138 return *this;
139 }
141
143
146 inline const Aws::String& GetDescription() const { return m_description; }
147 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
148 template <typename DescriptionT = Aws::String>
149 void SetDescription(DescriptionT&& value) {
150 m_descriptionHasBeenSet = true;
151 m_description = std::forward<DescriptionT>(value);
152 }
153 template <typename DescriptionT = Aws::String>
154 CreateRuleRequest& WithDescription(DescriptionT&& value) {
155 SetDescription(std::forward<DescriptionT>(value));
156 return *this;
157 }
159
161
165 inline const Aws::String& GetClientToken() const { return m_clientToken; }
166 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
167 template <typename ClientTokenT = Aws::String>
168 void SetClientToken(ClientTokenT&& value) {
169 m_clientTokenHasBeenSet = true;
170 m_clientToken = std::forward<ClientTokenT>(value);
171 }
172 template <typename ClientTokenT = Aws::String>
173 CreateRuleRequest& WithClientToken(ClientTokenT&& value) {
174 SetClientToken(std::forward<ClientTokenT>(value));
175 return *this;
176 }
178 private:
179 Aws::String m_domainIdentifier;
180
181 Aws::String m_name;
182
183 RuleTarget m_target;
184
186
187 RuleScope m_scope;
188
189 RuleDetail m_detail;
190
191 Aws::String m_description;
192
194 bool m_domainIdentifierHasBeenSet = false;
195 bool m_nameHasBeenSet = false;
196 bool m_targetHasBeenSet = false;
197 bool m_actionHasBeenSet = false;
198 bool m_scopeHasBeenSet = false;
199 bool m_detailHasBeenSet = false;
200 bool m_descriptionHasBeenSet = false;
201 bool m_clientTokenHasBeenSet = true;
202};
203
204} // namespace Model
205} // namespace DataZone
206} // namespace Aws
CreateRuleRequest & WithDetail(DetailT &&value)
virtual const char * GetServiceRequestName() const override
CreateRuleRequest & WithClientToken(ClientTokenT &&value)
CreateRuleRequest & WithScope(ScopeT &&value)
CreateRuleRequest & WithDomainIdentifier(DomainIdentifierT &&value)
void SetDescription(DescriptionT &&value)
AWS_DATAZONE_API CreateRuleRequest()=default
const Aws::String & GetDescription() const
const Aws::String & GetClientToken() const
void SetDomainIdentifier(DomainIdentifierT &&value)
CreateRuleRequest & WithDescription(DescriptionT &&value)
void SetClientToken(ClientTokenT &&value)
const Aws::String & GetDomainIdentifier() const
CreateRuleRequest & WithName(NameT &&value)
CreateRuleRequest & WithAction(RuleAction value)
AWS_DATAZONE_API Aws::String SerializePayload() const override
CreateRuleRequest & WithTarget(TargetT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String