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/iam/model/AttachedPermissionsBoundary.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/iam/model/RoleLastUsed.h>
14#include <aws/iam/model/Tag.h>
59 inline void SetPath(
const char* value) { m_pathHasBeenSet =
true; m_path.assign(value); }
73 inline void SetRoleName(
const char* value) { m_roleNameHasBeenSet =
true; m_roleName.assign(value); }
90 inline void SetRoleId(
const char* value) { m_roleIdHasBeenSet =
true; m_roleId.assign(value); }
107 inline void SetArn(
const char* value) { m_arnHasBeenSet =
true; m_arn.assign(value); }
134 inline void SetAssumeRolePolicyDocument(
const char* value) { m_assumeRolePolicyDocumentHasBeenSet =
true; m_assumeRolePolicyDocument.assign(value); }
148 inline void SetDescription(
const char* value) { m_descriptionHasBeenSet =
true; m_description.assign(value); }
163 inline void SetMaxSessionDuration(
int value) { m_maxSessionDurationHasBeenSet =
true; m_maxSessionDuration = value; }
195 inline Role&
AddTags(
const Tag& value) { m_tagsHasBeenSet =
true; m_tags.push_back(value);
return *
this; }
196 inline Role&
AddTags(
Tag&& value) { m_tagsHasBeenSet =
true; m_tags.push_back(std::move(value));
return *
this; }
219 bool m_pathHasBeenSet =
false;
222 bool m_roleNameHasBeenSet =
false;
225 bool m_roleIdHasBeenSet =
false;
228 bool m_arnHasBeenSet =
false;
231 bool m_createDateHasBeenSet =
false;
234 bool m_assumeRolePolicyDocumentHasBeenSet =
false;
237 bool m_descriptionHasBeenSet =
false;
239 int m_maxSessionDuration;
240 bool m_maxSessionDurationHasBeenSet =
false;
243 bool m_permissionsBoundaryHasBeenSet =
false;
246 bool m_tagsHasBeenSet =
false;
249 bool m_roleLastUsedHasBeenSet =
false;
AWS_IAM_API Role & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool CreateDateHasBeenSet() const
bool PermissionsBoundaryHasBeenSet() const
void SetAssumeRolePolicyDocument(const char *value)
Role & WithRoleLastUsed(RoleLastUsed &&value)
Role & WithRoleId(const Aws::String &value)
int GetMaxSessionDuration() const
Role & WithRoleName(const char *value)
Role & WithPath(const char *value)
Role & WithTags(Aws::Vector< Tag > &&value)
const Aws::String & GetAssumeRolePolicyDocument() const
void SetRoleLastUsed(const RoleLastUsed &value)
void SetArn(Aws::String &&value)
bool RoleIdHasBeenSet() const
Role & WithTags(const Aws::Vector< Tag > &value)
void SetRoleName(Aws::String &&value)
Role & WithAssumeRolePolicyDocument(Aws::String &&value)
Role & WithArn(const Aws::String &value)
Role & WithPath(Aws::String &&value)
void SetDescription(const char *value)
void SetCreateDate(Aws::Utils::DateTime &&value)
void SetPath(const Aws::String &value)
bool RoleLastUsedHasBeenSet() const
Role & AddTags(Tag &&value)
void SetPermissionsBoundary(const AttachedPermissionsBoundary &value)
const AttachedPermissionsBoundary & GetPermissionsBoundary() const
Role & WithAssumeRolePolicyDocument(const char *value)
Role & WithRoleName(const Aws::String &value)
void SetRoleId(const char *value)
const Aws::String & GetRoleId() const
bool PathHasBeenSet() const
Role & AddTags(const Tag &value)
Role & WithAssumeRolePolicyDocument(const Aws::String &value)
Role & WithMaxSessionDuration(int value)
void SetRoleName(const Aws::String &value)
bool TagsHasBeenSet() const
Role & WithRoleLastUsed(const RoleLastUsed &value)
void SetMaxSessionDuration(int value)
Role & WithCreateDate(Aws::Utils::DateTime &&value)
bool AssumeRolePolicyDocumentHasBeenSet() const
void SetRoleLastUsed(RoleLastUsed &&value)
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_IAM_API Role(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetRoleName() const
void SetArn(const Aws::String &value)
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetTags(const Aws::Vector< Tag > &value)
Role & WithRoleId(Aws::String &&value)
void SetPath(Aws::String &&value)
void SetRoleName(const char *value)
Role & WithPermissionsBoundary(const AttachedPermissionsBoundary &value)
void SetRoleId(const Aws::String &value)
const Aws::String & GetDescription() const
bool MaxSessionDurationHasBeenSet() const
Role & WithRoleName(Aws::String &&value)
const Aws::Vector< Tag > & GetTags() const
const Aws::String & GetArn() const
Role & WithArn(const char *value)
const RoleLastUsed & GetRoleLastUsed() const
Role & WithDescription(const char *value)
void SetDescription(const Aws::String &value)
const Aws::Utils::DateTime & GetCreateDate() const
void SetRoleId(Aws::String &&value)
void SetPath(const char *value)
Role & WithDescription(Aws::String &&value)
Role & WithPath(const Aws::String &value)
bool RoleNameHasBeenSet() const
Role & WithDescription(const Aws::String &value)
void SetPermissionsBoundary(AttachedPermissionsBoundary &&value)
Role & WithArn(Aws::String &&value)
Role & WithCreateDate(const Aws::Utils::DateTime &value)
void SetAssumeRolePolicyDocument(const Aws::String &value)
Role & WithPermissionsBoundary(AttachedPermissionsBoundary &&value)
Role & WithRoleId(const char *value)
void SetCreateDate(const Aws::Utils::DateTime &value)
bool ArnHasBeenSet() const
void SetTags(Aws::Vector< Tag > &&value)
bool DescriptionHasBeenSet() const
void SetAssumeRolePolicyDocument(Aws::String &&value)
const Aws::String & GetPath() const
void SetArn(const char *value)
void SetDescription(Aws::String &&value)
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