AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
PutAccessControlRuleRequest.h
1
6#pragma once
7#include <aws/workmail/WorkMail_EXPORTS.h>
8#include <aws/workmail/WorkMailRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/workmail/model/AccessControlRuleEffect.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <utility>
13
14namespace Aws
15{
16namespace WorkMail
17{
18namespace Model
19{
20
24 {
25 public:
26 AWS_WORKMAIL_API PutAccessControlRuleRequest() = 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 "PutAccessControlRule"; }
33
34 AWS_WORKMAIL_API Aws::String SerializePayload() const override;
35
37
38
40
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template<typename NameT = Aws::String>
46 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
47 template<typename NameT = Aws::String>
48 PutAccessControlRuleRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
50
52
55 inline AccessControlRuleEffect GetEffect() const { return m_effect; }
56 inline bool EffectHasBeenSet() const { return m_effectHasBeenSet; }
57 inline void SetEffect(AccessControlRuleEffect value) { m_effectHasBeenSet = true; m_effect = value; }
60
62
65 inline const Aws::String& GetDescription() const { return m_description; }
66 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
67 template<typename DescriptionT = Aws::String>
68 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
69 template<typename DescriptionT = Aws::String>
70 PutAccessControlRuleRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
72
74
77 inline const Aws::Vector<Aws::String>& GetIpRanges() const { return m_ipRanges; }
78 inline bool IpRangesHasBeenSet() const { return m_ipRangesHasBeenSet; }
79 template<typename IpRangesT = Aws::Vector<Aws::String>>
80 void SetIpRanges(IpRangesT&& value) { m_ipRangesHasBeenSet = true; m_ipRanges = std::forward<IpRangesT>(value); }
81 template<typename IpRangesT = Aws::Vector<Aws::String>>
82 PutAccessControlRuleRequest& WithIpRanges(IpRangesT&& value) { SetIpRanges(std::forward<IpRangesT>(value)); return *this;}
83 template<typename IpRangesT = Aws::String>
84 PutAccessControlRuleRequest& AddIpRanges(IpRangesT&& value) { m_ipRangesHasBeenSet = true; m_ipRanges.emplace_back(std::forward<IpRangesT>(value)); return *this; }
86
88
91 inline const Aws::Vector<Aws::String>& GetNotIpRanges() const { return m_notIpRanges; }
92 inline bool NotIpRangesHasBeenSet() const { return m_notIpRangesHasBeenSet; }
93 template<typename NotIpRangesT = Aws::Vector<Aws::String>>
94 void SetNotIpRanges(NotIpRangesT&& value) { m_notIpRangesHasBeenSet = true; m_notIpRanges = std::forward<NotIpRangesT>(value); }
95 template<typename NotIpRangesT = Aws::Vector<Aws::String>>
96 PutAccessControlRuleRequest& WithNotIpRanges(NotIpRangesT&& value) { SetNotIpRanges(std::forward<NotIpRangesT>(value)); return *this;}
97 template<typename NotIpRangesT = Aws::String>
98 PutAccessControlRuleRequest& AddNotIpRanges(NotIpRangesT&& value) { m_notIpRangesHasBeenSet = true; m_notIpRanges.emplace_back(std::forward<NotIpRangesT>(value)); return *this; }
100
102
108 inline const Aws::Vector<Aws::String>& GetActions() const { return m_actions; }
109 inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; }
110 template<typename ActionsT = Aws::Vector<Aws::String>>
111 void SetActions(ActionsT&& value) { m_actionsHasBeenSet = true; m_actions = std::forward<ActionsT>(value); }
112 template<typename ActionsT = Aws::Vector<Aws::String>>
113 PutAccessControlRuleRequest& WithActions(ActionsT&& value) { SetActions(std::forward<ActionsT>(value)); return *this;}
114 template<typename ActionsT = Aws::String>
115 PutAccessControlRuleRequest& AddActions(ActionsT&& value) { m_actionsHasBeenSet = true; m_actions.emplace_back(std::forward<ActionsT>(value)); return *this; }
117
119
125 inline const Aws::Vector<Aws::String>& GetNotActions() const { return m_notActions; }
126 inline bool NotActionsHasBeenSet() const { return m_notActionsHasBeenSet; }
127 template<typename NotActionsT = Aws::Vector<Aws::String>>
128 void SetNotActions(NotActionsT&& value) { m_notActionsHasBeenSet = true; m_notActions = std::forward<NotActionsT>(value); }
129 template<typename NotActionsT = Aws::Vector<Aws::String>>
130 PutAccessControlRuleRequest& WithNotActions(NotActionsT&& value) { SetNotActions(std::forward<NotActionsT>(value)); return *this;}
131 template<typename NotActionsT = Aws::String>
132 PutAccessControlRuleRequest& AddNotActions(NotActionsT&& value) { m_notActionsHasBeenSet = true; m_notActions.emplace_back(std::forward<NotActionsT>(value)); return *this; }
134
136
139 inline const Aws::Vector<Aws::String>& GetUserIds() const { return m_userIds; }
140 inline bool UserIdsHasBeenSet() const { return m_userIdsHasBeenSet; }
141 template<typename UserIdsT = Aws::Vector<Aws::String>>
142 void SetUserIds(UserIdsT&& value) { m_userIdsHasBeenSet = true; m_userIds = std::forward<UserIdsT>(value); }
143 template<typename UserIdsT = Aws::Vector<Aws::String>>
144 PutAccessControlRuleRequest& WithUserIds(UserIdsT&& value) { SetUserIds(std::forward<UserIdsT>(value)); return *this;}
145 template<typename UserIdsT = Aws::String>
146 PutAccessControlRuleRequest& AddUserIds(UserIdsT&& value) { m_userIdsHasBeenSet = true; m_userIds.emplace_back(std::forward<UserIdsT>(value)); return *this; }
148
150
153 inline const Aws::Vector<Aws::String>& GetNotUserIds() const { return m_notUserIds; }
154 inline bool NotUserIdsHasBeenSet() const { return m_notUserIdsHasBeenSet; }
155 template<typename NotUserIdsT = Aws::Vector<Aws::String>>
156 void SetNotUserIds(NotUserIdsT&& value) { m_notUserIdsHasBeenSet = true; m_notUserIds = std::forward<NotUserIdsT>(value); }
157 template<typename NotUserIdsT = Aws::Vector<Aws::String>>
158 PutAccessControlRuleRequest& WithNotUserIds(NotUserIdsT&& value) { SetNotUserIds(std::forward<NotUserIdsT>(value)); return *this;}
159 template<typename NotUserIdsT = Aws::String>
160 PutAccessControlRuleRequest& AddNotUserIds(NotUserIdsT&& value) { m_notUserIdsHasBeenSet = true; m_notUserIds.emplace_back(std::forward<NotUserIdsT>(value)); return *this; }
162
164
167 inline const Aws::String& GetOrganizationId() const { return m_organizationId; }
168 inline bool OrganizationIdHasBeenSet() const { return m_organizationIdHasBeenSet; }
169 template<typename OrganizationIdT = Aws::String>
170 void SetOrganizationId(OrganizationIdT&& value) { m_organizationIdHasBeenSet = true; m_organizationId = std::forward<OrganizationIdT>(value); }
171 template<typename OrganizationIdT = Aws::String>
172 PutAccessControlRuleRequest& WithOrganizationId(OrganizationIdT&& value) { SetOrganizationId(std::forward<OrganizationIdT>(value)); return *this;}
174
176
179 inline const Aws::Vector<Aws::String>& GetImpersonationRoleIds() const { return m_impersonationRoleIds; }
180 inline bool ImpersonationRoleIdsHasBeenSet() const { return m_impersonationRoleIdsHasBeenSet; }
181 template<typename ImpersonationRoleIdsT = Aws::Vector<Aws::String>>
182 void SetImpersonationRoleIds(ImpersonationRoleIdsT&& value) { m_impersonationRoleIdsHasBeenSet = true; m_impersonationRoleIds = std::forward<ImpersonationRoleIdsT>(value); }
183 template<typename ImpersonationRoleIdsT = Aws::Vector<Aws::String>>
184 PutAccessControlRuleRequest& WithImpersonationRoleIds(ImpersonationRoleIdsT&& value) { SetImpersonationRoleIds(std::forward<ImpersonationRoleIdsT>(value)); return *this;}
185 template<typename ImpersonationRoleIdsT = Aws::String>
186 PutAccessControlRuleRequest& AddImpersonationRoleIds(ImpersonationRoleIdsT&& value) { m_impersonationRoleIdsHasBeenSet = true; m_impersonationRoleIds.emplace_back(std::forward<ImpersonationRoleIdsT>(value)); return *this; }
188
190
193 inline const Aws::Vector<Aws::String>& GetNotImpersonationRoleIds() const { return m_notImpersonationRoleIds; }
194 inline bool NotImpersonationRoleIdsHasBeenSet() const { return m_notImpersonationRoleIdsHasBeenSet; }
195 template<typename NotImpersonationRoleIdsT = Aws::Vector<Aws::String>>
196 void SetNotImpersonationRoleIds(NotImpersonationRoleIdsT&& value) { m_notImpersonationRoleIdsHasBeenSet = true; m_notImpersonationRoleIds = std::forward<NotImpersonationRoleIdsT>(value); }
197 template<typename NotImpersonationRoleIdsT = Aws::Vector<Aws::String>>
198 PutAccessControlRuleRequest& WithNotImpersonationRoleIds(NotImpersonationRoleIdsT&& value) { SetNotImpersonationRoleIds(std::forward<NotImpersonationRoleIdsT>(value)); return *this;}
199 template<typename NotImpersonationRoleIdsT = Aws::String>
200 PutAccessControlRuleRequest& AddNotImpersonationRoleIds(NotImpersonationRoleIdsT&& value) { m_notImpersonationRoleIdsHasBeenSet = true; m_notImpersonationRoleIds.emplace_back(std::forward<NotImpersonationRoleIdsT>(value)); return *this; }
202 private:
203
204 Aws::String m_name;
205 bool m_nameHasBeenSet = false;
206
208 bool m_effectHasBeenSet = false;
209
210 Aws::String m_description;
211 bool m_descriptionHasBeenSet = false;
212
213 Aws::Vector<Aws::String> m_ipRanges;
214 bool m_ipRangesHasBeenSet = false;
215
216 Aws::Vector<Aws::String> m_notIpRanges;
217 bool m_notIpRangesHasBeenSet = false;
218
219 Aws::Vector<Aws::String> m_actions;
220 bool m_actionsHasBeenSet = false;
221
222 Aws::Vector<Aws::String> m_notActions;
223 bool m_notActionsHasBeenSet = false;
224
225 Aws::Vector<Aws::String> m_userIds;
226 bool m_userIdsHasBeenSet = false;
227
228 Aws::Vector<Aws::String> m_notUserIds;
229 bool m_notUserIdsHasBeenSet = false;
230
231 Aws::String m_organizationId;
232 bool m_organizationIdHasBeenSet = false;
233
234 Aws::Vector<Aws::String> m_impersonationRoleIds;
235 bool m_impersonationRoleIdsHasBeenSet = false;
236
237 Aws::Vector<Aws::String> m_notImpersonationRoleIds;
238 bool m_notImpersonationRoleIdsHasBeenSet = false;
239 };
240
241} // namespace Model
242} // namespace WorkMail
243} // namespace Aws
PutAccessControlRuleRequest & AddUserIds(UserIdsT &&value)
PutAccessControlRuleRequest & WithImpersonationRoleIds(ImpersonationRoleIdsT &&value)
PutAccessControlRuleRequest & AddImpersonationRoleIds(ImpersonationRoleIdsT &&value)
PutAccessControlRuleRequest & WithOrganizationId(OrganizationIdT &&value)
PutAccessControlRuleRequest & WithNotImpersonationRoleIds(NotImpersonationRoleIdsT &&value)
PutAccessControlRuleRequest & AddNotUserIds(NotUserIdsT &&value)
const Aws::Vector< Aws::String > & GetActions() const
PutAccessControlRuleRequest & WithNotActions(NotActionsT &&value)
PutAccessControlRuleRequest & WithNotIpRanges(NotIpRangesT &&value)
PutAccessControlRuleRequest & AddIpRanges(IpRangesT &&value)
const Aws::Vector< Aws::String > & GetImpersonationRoleIds() const
PutAccessControlRuleRequest & AddNotActions(NotActionsT &&value)
virtual const char * GetServiceRequestName() const override
AWS_WORKMAIL_API PutAccessControlRuleRequest()=default
AWS_WORKMAIL_API Aws::String SerializePayload() const override
void SetNotImpersonationRoleIds(NotImpersonationRoleIdsT &&value)
PutAccessControlRuleRequest & WithUserIds(UserIdsT &&value)
const Aws::Vector< Aws::String > & GetNotIpRanges() const
PutAccessControlRuleRequest & AddNotIpRanges(NotIpRangesT &&value)
PutAccessControlRuleRequest & WithDescription(DescriptionT &&value)
PutAccessControlRuleRequest & AddActions(ActionsT &&value)
PutAccessControlRuleRequest & AddNotImpersonationRoleIds(NotImpersonationRoleIdsT &&value)
const Aws::Vector< Aws::String > & GetNotImpersonationRoleIds() const
const Aws::Vector< Aws::String > & GetUserIds() const
PutAccessControlRuleRequest & WithIpRanges(IpRangesT &&value)
PutAccessControlRuleRequest & WithActions(ActionsT &&value)
PutAccessControlRuleRequest & WithEffect(AccessControlRuleEffect value)
const Aws::Vector< Aws::String > & GetNotUserIds() const
const Aws::Vector< Aws::String > & GetNotActions() const
AWS_WORKMAIL_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
PutAccessControlRuleRequest & WithName(NameT &&value)
const Aws::Vector< Aws::String > & GetIpRanges() const
PutAccessControlRuleRequest & WithNotUserIds(NotUserIdsT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector