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>
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>
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>
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>>
83 template<
typename IpRangesT = Aws::String>
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>>
97 template<
typename NotIpRangesT = Aws::String>
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>>
114 template<
typename ActionsT = Aws::String>
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>>
131 template<
typename NotActionsT = Aws::String>
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>>
145 template<
typename UserIdsT = Aws::String>
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>>
159 template<
typename NotUserIdsT = Aws::String>
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>
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>>
185 template<
typename ImpersonationRoleIdsT = Aws::String>
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>>
199 template<
typename NotImpersonationRoleIdsT = Aws::String>
205 bool m_nameHasBeenSet =
false;
208 bool m_effectHasBeenSet =
false;
211 bool m_descriptionHasBeenSet =
false;
214 bool m_ipRangesHasBeenSet =
false;
217 bool m_notIpRangesHasBeenSet =
false;
220 bool m_actionsHasBeenSet =
false;
223 bool m_notActionsHasBeenSet =
false;
226 bool m_userIdsHasBeenSet =
false;
229 bool m_notUserIdsHasBeenSet =
false;
232 bool m_organizationIdHasBeenSet =
false;
235 bool m_impersonationRoleIdsHasBeenSet =
false;
238 bool m_notImpersonationRoleIdsHasBeenSet =
false;
bool DescriptionHasBeenSet() const
void SetOrganizationId(OrganizationIdT &&value)
PutAccessControlRuleRequest & AddUserIds(UserIdsT &&value)
PutAccessControlRuleRequest & WithImpersonationRoleIds(ImpersonationRoleIdsT &&value)
PutAccessControlRuleRequest & AddImpersonationRoleIds(ImpersonationRoleIdsT &&value)
bool EffectHasBeenSet() const
void SetDescription(DescriptionT &&value)
PutAccessControlRuleRequest & WithOrganizationId(OrganizationIdT &&value)
bool NameHasBeenSet() const
PutAccessControlRuleRequest & WithNotImpersonationRoleIds(NotImpersonationRoleIdsT &&value)
bool IpRangesHasBeenSet() const
void SetImpersonationRoleIds(ImpersonationRoleIdsT &&value)
PutAccessControlRuleRequest & AddNotUserIds(NotUserIdsT &&value)
const Aws::Vector< Aws::String > & GetActions() const
PutAccessControlRuleRequest & WithNotActions(NotActionsT &&value)
const Aws::String & GetOrganizationId() const
void SetNotUserIds(NotUserIdsT &&value)
PutAccessControlRuleRequest & WithNotIpRanges(NotIpRangesT &&value)
PutAccessControlRuleRequest & AddIpRanges(IpRangesT &&value)
void SetNotIpRanges(NotIpRangesT &&value)
AccessControlRuleEffect GetEffect() const
const Aws::Vector< Aws::String > & GetImpersonationRoleIds() const
PutAccessControlRuleRequest & AddNotActions(NotActionsT &&value)
bool NotImpersonationRoleIdsHasBeenSet() const
virtual const char * GetServiceRequestName() const override
AWS_WORKMAIL_API PutAccessControlRuleRequest()=default
void SetNotActions(NotActionsT &&value)
bool ActionsHasBeenSet() const
void SetUserIds(UserIdsT &&value)
const Aws::String & GetDescription() const
bool ImpersonationRoleIdsHasBeenSet() const
AWS_WORKMAIL_API Aws::String SerializePayload() const override
bool OrganizationIdHasBeenSet() const
void SetNotImpersonationRoleIds(NotImpersonationRoleIdsT &&value)
PutAccessControlRuleRequest & WithUserIds(UserIdsT &&value)
void SetActions(ActionsT &&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
void SetIpRanges(IpRangesT &&value)
PutAccessControlRuleRequest & WithIpRanges(IpRangesT &&value)
PutAccessControlRuleRequest & WithActions(ActionsT &&value)
PutAccessControlRuleRequest & WithEffect(AccessControlRuleEffect value)
void SetName(NameT &&value)
bool NotUserIdsHasBeenSet() const
void SetEffect(AccessControlRuleEffect value)
const Aws::Vector< Aws::String > & GetNotUserIds() const
bool UserIdsHasBeenSet() const
bool NotActionsHasBeenSet() const
const Aws::Vector< Aws::String > & GetNotActions() const
const Aws::String & GetName() 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)
bool NotIpRangesHasBeenSet() const
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