7#include <aws/iam/IAM_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/iam/model/Tag.h>
59 inline void SetPolicyName(
const char* value) { m_policyNameHasBeenSet =
true; m_policyName.assign(value); }
76 inline void SetPolicyId(
const char* value) { m_policyIdHasBeenSet =
true; m_policyId.assign(value); }
87 inline void SetArn(
Aws::String&& value) { m_arnHasBeenSet =
true; m_arn = std::move(value); }
88 inline void SetArn(
const char* value) { m_arnHasBeenSet =
true; m_arn.assign(value); }
104 inline void SetPath(
const char* value) { m_pathHasBeenSet =
true; m_path.assign(value); }
119 inline void SetDefaultVersionId(
const char* value) { m_defaultVersionIdHasBeenSet =
true; m_defaultVersionId.assign(value); }
132 inline void SetAttachmentCount(
int value) { m_attachmentCountHasBeenSet =
true; m_attachmentCount = value; }
157 inline void SetIsAttachable(
bool value) { m_isAttachableHasBeenSet =
true; m_isAttachable = value; }
171 inline void SetDescription(
const char* value) { m_descriptionHasBeenSet =
true; m_description.assign(value); }
219 inline Policy&
AddTags(
const Tag& value) { m_tagsHasBeenSet =
true; m_tags.push_back(value);
return *
this; }
220 inline Policy&
AddTags(
Tag&& value) { m_tagsHasBeenSet =
true; m_tags.push_back(std::move(value));
return *
this; }
225 bool m_policyNameHasBeenSet =
false;
228 bool m_policyIdHasBeenSet =
false;
231 bool m_arnHasBeenSet =
false;
234 bool m_pathHasBeenSet =
false;
237 bool m_defaultVersionIdHasBeenSet =
false;
239 int m_attachmentCount;
240 bool m_attachmentCountHasBeenSet =
false;
242 int m_permissionsBoundaryUsageCount;
243 bool m_permissionsBoundaryUsageCountHasBeenSet =
false;
246 bool m_isAttachableHasBeenSet =
false;
249 bool m_descriptionHasBeenSet =
false;
252 bool m_createDateHasBeenSet =
false;
255 bool m_updateDateHasBeenSet =
false;
258 bool m_tagsHasBeenSet =
false;
Policy & WithArn(const Aws::String &value)
void SetDefaultVersionId(const Aws::String &value)
Policy & AddTags(const Tag &value)
Policy & WithDescription(Aws::String &&value)
Policy & WithPermissionsBoundaryUsageCount(int value)
Policy & WithPolicyName(const Aws::String &value)
Policy & WithTags(const Aws::Vector< Tag > &value)
void SetPath(const char *value)
int GetAttachmentCount() const
Policy & WithDescription(const char *value)
void SetPath(Aws::String &&value)
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::String & GetDefaultVersionId() const
void SetPolicyName(const Aws::String &value)
Policy & WithDefaultVersionId(Aws::String &&value)
Policy & WithDescription(const Aws::String &value)
Policy & WithIsAttachable(bool value)
void SetTags(const Aws::Vector< Tag > &value)
const Aws::String & GetPolicyName() const
void SetCreateDate(Aws::Utils::DateTime &&value)
Policy & AddTags(Tag &&value)
bool PermissionsBoundaryUsageCountHasBeenSet() const
void SetPolicyName(const char *value)
Policy & WithPolicyName(const char *value)
bool GetIsAttachable() const
const Aws::Utils::DateTime & GetUpdateDate() const
void SetPolicyName(Aws::String &&value)
bool PolicyNameHasBeenSet() const
Policy & WithTags(Aws::Vector< Tag > &&value)
AWS_IAM_API Policy & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetPolicyId(const Aws::String &value)
void SetDescription(Aws::String &&value)
Policy & WithPolicyId(const Aws::String &value)
Policy & WithArn(Aws::String &&value)
bool PathHasBeenSet() const
bool CreateDateHasBeenSet() const
bool DefaultVersionIdHasBeenSet() const
bool UpdateDateHasBeenSet() const
Policy & WithCreateDate(const Aws::Utils::DateTime &value)
void SetDefaultVersionId(const char *value)
void SetArn(const char *value)
Policy & WithUpdateDate(const Aws::Utils::DateTime &value)
Policy & WithCreateDate(Aws::Utils::DateTime &&value)
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetAttachmentCount(int value)
bool TagsHasBeenSet() const
void SetPolicyId(Aws::String &&value)
void SetTags(Aws::Vector< Tag > &&value)
Policy & WithAttachmentCount(int value)
void SetDefaultVersionId(Aws::String &&value)
Policy & WithDefaultVersionId(const Aws::String &value)
Policy & WithUpdateDate(Aws::Utils::DateTime &&value)
AWS_IAM_API Policy(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetUpdateDate(const Aws::Utils::DateTime &value)
Policy & WithPolicyId(const char *value)
void SetPath(const Aws::String &value)
Policy & WithPath(Aws::String &&value)
Policy & WithPath(const Aws::String &value)
bool ArnHasBeenSet() const
void SetUpdateDate(Aws::Utils::DateTime &&value)
void SetArn(Aws::String &&value)
void SetPermissionsBoundaryUsageCount(int value)
void SetPolicyId(const char *value)
const Aws::Utils::DateTime & GetCreateDate() const
Policy & WithDefaultVersionId(const char *value)
bool DescriptionHasBeenSet() const
void SetCreateDate(const Aws::Utils::DateTime &value)
int GetPermissionsBoundaryUsageCount() const
Policy & WithPath(const char *value)
void SetDescription(const char *value)
const Aws::String & GetDescription() const
const Aws::String & GetPolicyId() const
void SetArn(const Aws::String &value)
void SetIsAttachable(bool value)
bool PolicyIdHasBeenSet() const
Policy & WithArn(const char *value)
void SetDescription(const Aws::String &value)
Policy & WithPolicyName(Aws::String &&value)
const Aws::Vector< Tag > & GetTags() const
bool AttachmentCountHasBeenSet() const
Policy & WithPolicyId(Aws::String &&value)
const Aws::String & GetArn() const
const Aws::String & GetPath() const
bool IsAttachableHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream