7#include <aws/verifiedpermissions/VerifiedPermissions_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/verifiedpermissions/model/PolicyType.h>
10#include <aws/verifiedpermissions/model/EntityIdentifier.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/verifiedpermissions/model/PolicyDefinitionItem.h>
13#include <aws/core/utils/DateTime.h>
14#include <aws/verifiedpermissions/model/PolicyEffect.h>
15#include <aws/verifiedpermissions/model/ActionIdentifier.h>
28namespace VerifiedPermissions
57 template<
typename PolicyStoreIdT = Aws::String>
58 void SetPolicyStoreId(PolicyStoreIdT&& value) { m_policyStoreIdHasBeenSet =
true; m_policyStoreId = std::forward<PolicyStoreIdT>(value); }
59 template<
typename PolicyStoreIdT = Aws::String>
69 template<
typename PolicyIdT = Aws::String>
70 void SetPolicyId(PolicyIdT&& value) { m_policyIdHasBeenSet =
true; m_policyId = std::forward<PolicyIdT>(value); }
71 template<
typename PolicyIdT = Aws::String>
93 template<
typename PrincipalT = EntityIdentifier>
94 void SetPrincipal(PrincipalT&& value) { m_principalHasBeenSet =
true; m_principal = std::forward<PrincipalT>(value); }
95 template<
typename PrincipalT = EntityIdentifier>
105 template<
typename ResourceT = EntityIdentifier>
106 void SetResource(ResourceT&& value) { m_resourceHasBeenSet =
true; m_resource = std::forward<ResourceT>(value); }
107 template<
typename ResourceT = EntityIdentifier>
119 template<
typename ActionsT = Aws::Vector<ActionIdentifier>>
120 void SetActions(ActionsT&& value) { m_actionsHasBeenSet =
true; m_actions = std::forward<ActionsT>(value); }
121 template<
typename ActionsT = Aws::Vector<ActionIdentifier>>
123 template<
typename ActionsT = ActionIdentifier>
124 PolicyItem&
AddActions(ActionsT&& value) { m_actionsHasBeenSet =
true; m_actions.emplace_back(std::forward<ActionsT>(value));
return *
this; }
133 template<
typename DefinitionT = PolicyDefinitionItem>
134 void SetDefinition(DefinitionT&& value) { m_definitionHasBeenSet =
true; m_definition = std::forward<DefinitionT>(value); }
135 template<
typename DefinitionT = PolicyDefinitionItem>
145 template<
typename CreatedDateT = Aws::Utils::DateTime>
146 void SetCreatedDate(CreatedDateT&& value) { m_createdDateHasBeenSet =
true; m_createdDate = std::forward<CreatedDateT>(value); }
147 template<
typename CreatedDateT = Aws::Utils::DateTime>
157 template<
typename LastUpdatedDateT = Aws::Utils::DateTime>
158 void SetLastUpdatedDate(LastUpdatedDateT&& value) { m_lastUpdatedDateHasBeenSet =
true; m_lastUpdatedDate = std::forward<LastUpdatedDateT>(value); }
159 template<
typename LastUpdatedDateT = Aws::Utils::DateTime>
176 bool m_policyStoreIdHasBeenSet =
false;
179 bool m_policyIdHasBeenSet =
false;
182 bool m_policyTypeHasBeenSet =
false;
184 EntityIdentifier m_principal;
185 bool m_principalHasBeenSet =
false;
187 EntityIdentifier m_resource;
188 bool m_resourceHasBeenSet =
false;
191 bool m_actionsHasBeenSet =
false;
193 PolicyDefinitionItem m_definition;
194 bool m_definitionHasBeenSet =
false;
197 bool m_createdDateHasBeenSet =
false;
200 bool m_lastUpdatedDateHasBeenSet =
false;
203 bool m_effectHasBeenSet =
false;
void SetPolicyType(PolicyType value)
PolicyType GetPolicyType() const
void SetPolicyStoreId(PolicyStoreIdT &&value)
AWS_VERIFIEDPERMISSIONS_API PolicyItem(Aws::Utils::Json::JsonView jsonValue)
void SetDefinition(DefinitionT &&value)
bool ResourceHasBeenSet() const
const Aws::String & GetPolicyStoreId() const
void SetResource(ResourceT &&value)
void SetEffect(PolicyEffect value)
const Aws::String & GetPolicyId() const
bool ActionsHasBeenSet() const
PolicyItem & WithResource(ResourceT &&value)
void SetPrincipal(PrincipalT &&value)
PolicyItem & WithPrincipal(PrincipalT &&value)
PolicyEffect GetEffect() const
const EntityIdentifier & GetPrincipal() const
void SetLastUpdatedDate(LastUpdatedDateT &&value)
const Aws::Utils::DateTime & GetCreatedDate() const
bool CreatedDateHasBeenSet() const
AWS_VERIFIEDPERMISSIONS_API Aws::Utils::Json::JsonValue Jsonize() const
PolicyItem & WithPolicyStoreId(PolicyStoreIdT &&value)
bool PolicyTypeHasBeenSet() const
PolicyItem & WithDefinition(DefinitionT &&value)
PolicyItem & WithActions(ActionsT &&value)
AWS_VERIFIEDPERMISSIONS_API PolicyItem()=default
void SetPolicyId(PolicyIdT &&value)
PolicyItem & WithLastUpdatedDate(LastUpdatedDateT &&value)
bool LastUpdatedDateHasBeenSet() const
bool DefinitionHasBeenSet() const
bool EffectHasBeenSet() const
PolicyItem & AddActions(ActionsT &&value)
const EntityIdentifier & GetResource() const
const PolicyDefinitionItem & GetDefinition() const
void SetCreatedDate(CreatedDateT &&value)
AWS_VERIFIEDPERMISSIONS_API PolicyItem & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< ActionIdentifier > & GetActions() const
bool PrincipalHasBeenSet() const
PolicyItem & WithCreatedDate(CreatedDateT &&value)
PolicyItem & WithPolicyId(PolicyIdT &&value)
const Aws::Utils::DateTime & GetLastUpdatedDate() const
bool PolicyIdHasBeenSet() const
PolicyItem & WithPolicyType(PolicyType value)
void SetActions(ActionsT &&value)
PolicyItem & WithEffect(PolicyEffect value)
bool PolicyStoreIdHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue