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/AttachedPermissionsBoundary.h>
13#include <aws/iam/model/RoleLastUsed.h>
14#include <aws/iam/model/InstanceProfile.h>
15#include <aws/iam/model/PolicyDetail.h>
16#include <aws/iam/model/AttachedPolicy.h>
17#include <aws/iam/model/Tag.h>
62 inline void SetPath(
const char* value) { m_pathHasBeenSet =
true; m_path.assign(value); }
76 inline void SetRoleName(
const char* value) { m_roleNameHasBeenSet =
true; m_roleName.assign(value); }
93 inline void SetRoleId(
const char* value) { m_roleIdHasBeenSet =
true; m_roleId.assign(value); }
105 inline void SetArn(
const char* value) { m_arnHasBeenSet =
true; m_arn.assign(value); }
132 inline void SetAssumeRolePolicyDocument(
const char* value) { m_assumeRolePolicyDocumentHasBeenSet =
true; m_assumeRolePolicyDocument.assign(value); }
210 inline RoleDetail&
AddTags(
const Tag& value) { m_tagsHasBeenSet =
true; m_tags.push_back(value);
return *
this; }
211 inline RoleDetail&
AddTags(
Tag&& value) { m_tagsHasBeenSet =
true; m_tags.push_back(std::move(value));
return *
this; }
234 bool m_pathHasBeenSet =
false;
237 bool m_roleNameHasBeenSet =
false;
240 bool m_roleIdHasBeenSet =
false;
243 bool m_arnHasBeenSet =
false;
246 bool m_createDateHasBeenSet =
false;
249 bool m_assumeRolePolicyDocumentHasBeenSet =
false;
252 bool m_instanceProfileListHasBeenSet =
false;
255 bool m_rolePolicyListHasBeenSet =
false;
258 bool m_attachedManagedPoliciesHasBeenSet =
false;
261 bool m_permissionsBoundaryHasBeenSet =
false;
264 bool m_tagsHasBeenSet =
false;
267 bool m_roleLastUsedHasBeenSet =
false;
RoleDetail & WithRoleId(const char *value)
RoleDetail & WithPath(Aws::String &&value)
void SetCreateDate(const Aws::Utils::DateTime &value)
RoleDetail & WithRoleId(Aws::String &&value)
bool PathHasBeenSet() const
void SetRoleLastUsed(const RoleLastUsed &value)
const AttachedPermissionsBoundary & GetPermissionsBoundary() const
RoleDetail & WithRoleName(const char *value)
RoleDetail & WithRoleLastUsed(const RoleLastUsed &value)
bool InstanceProfileListHasBeenSet() const
RoleDetail & AddAttachedManagedPolicies(const AttachedPolicy &value)
const Aws::Vector< Tag > & GetTags() const
bool RolePolicyListHasBeenSet() const
const Aws::Vector< InstanceProfile > & GetInstanceProfileList() const
bool RoleNameHasBeenSet() const
RoleDetail & AddTags(Tag &&value)
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
RoleDetail & WithArn(const char *value)
void SetArn(const char *value)
void SetRoleId(const char *value)
RoleDetail & WithTags(Aws::Vector< Tag > &&value)
void SetArn(Aws::String &&value)
void SetPath(const Aws::String &value)
RoleDetail & AddRolePolicyList(PolicyDetail &&value)
bool TagsHasBeenSet() const
void SetInstanceProfileList(Aws::Vector< InstanceProfile > &&value)
RoleDetail & WithRoleName(Aws::String &&value)
RoleDetail & AddAttachedManagedPolicies(AttachedPolicy &&value)
RoleDetail & WithAssumeRolePolicyDocument(const Aws::String &value)
void SetRoleName(const Aws::String &value)
bool AttachedManagedPoliciesHasBeenSet() const
RoleDetail & WithInstanceProfileList(Aws::Vector< InstanceProfile > &&value)
RoleDetail & WithPermissionsBoundary(const AttachedPermissionsBoundary &value)
void SetPermissionsBoundary(AttachedPermissionsBoundary &&value)
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool CreateDateHasBeenSet() const
const Aws::String & GetArn() const
RoleDetail & WithCreateDate(Aws::Utils::DateTime &&value)
void SetAssumeRolePolicyDocument(const Aws::String &value)
void SetArn(const Aws::String &value)
RoleDetail & AddTags(const Tag &value)
void SetTags(const Aws::Vector< Tag > &value)
RoleDetail & WithRoleLastUsed(RoleLastUsed &&value)
void SetInstanceProfileList(const Aws::Vector< InstanceProfile > &value)
const RoleLastUsed & GetRoleLastUsed() const
void SetRoleId(const Aws::String &value)
RoleDetail & WithPath(const Aws::String &value)
RoleDetail & AddInstanceProfileList(InstanceProfile &&value)
RoleDetail & WithArn(const Aws::String &value)
void SetAssumeRolePolicyDocument(const char *value)
const Aws::Vector< PolicyDetail > & GetRolePolicyList() const
RoleDetail & WithArn(Aws::String &&value)
void SetRoleLastUsed(RoleLastUsed &&value)
RoleDetail & WithPath(const char *value)
void SetRoleName(const char *value)
void SetAssumeRolePolicyDocument(Aws::String &&value)
void SetCreateDate(Aws::Utils::DateTime &&value)
const Aws::String & GetPath() const
void SetAttachedManagedPolicies(const Aws::Vector< AttachedPolicy > &value)
bool RoleLastUsedHasBeenSet() const
RoleDetail & WithAttachedManagedPolicies(const Aws::Vector< AttachedPolicy > &value)
void SetRoleId(Aws::String &&value)
RoleDetail & WithAssumeRolePolicyDocument(Aws::String &&value)
RoleDetail & WithRolePolicyList(Aws::Vector< PolicyDetail > &&value)
void SetRoleName(Aws::String &&value)
void SetRolePolicyList(Aws::Vector< PolicyDetail > &&value)
const Aws::String & GetRoleId() const
const Aws::String & GetRoleName() const
void SetPermissionsBoundary(const AttachedPermissionsBoundary &value)
const Aws::Vector< AttachedPolicy > & GetAttachedManagedPolicies() const
RoleDetail & AddInstanceProfileList(const InstanceProfile &value)
RoleDetail & WithTags(const Aws::Vector< Tag > &value)
void SetAttachedManagedPolicies(Aws::Vector< AttachedPolicy > &&value)
RoleDetail & WithRolePolicyList(const Aws::Vector< PolicyDetail > &value)
RoleDetail & WithInstanceProfileList(const Aws::Vector< InstanceProfile > &value)
RoleDetail & WithRoleId(const Aws::String &value)
RoleDetail & WithRoleName(const Aws::String &value)
bool RoleIdHasBeenSet() const
RoleDetail & WithPermissionsBoundary(AttachedPermissionsBoundary &&value)
bool AssumeRolePolicyDocumentHasBeenSet() const
void SetTags(Aws::Vector< Tag > &&value)
AWS_IAM_API RoleDetail(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetPath(Aws::String &&value)
const Aws::Utils::DateTime & GetCreateDate() const
RoleDetail & WithAttachedManagedPolicies(Aws::Vector< AttachedPolicy > &&value)
void SetRolePolicyList(const Aws::Vector< PolicyDetail > &value)
AWS_IAM_API RoleDetail & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetAssumeRolePolicyDocument() const
RoleDetail & AddRolePolicyList(const PolicyDetail &value)
RoleDetail & WithAssumeRolePolicyDocument(const char *value)
bool PermissionsBoundaryHasBeenSet() const
bool ArnHasBeenSet() const
RoleDetail & WithCreateDate(const Aws::Utils::DateTime &value)
void SetPath(const char *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