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/Role.h>
13#include <aws/iam/model/Tag.h>
63 template<
typename PathT = Aws::String>
64 void SetPath(PathT&& value) { m_pathHasBeenSet =
true; m_path = std::forward<PathT>(value); }
65 template<
typename PathT = Aws::String>
75 template<
typename InstanceProfileNameT = Aws::String>
76 void SetInstanceProfileName(InstanceProfileNameT&& value) { m_instanceProfileNameHasBeenSet =
true; m_instanceProfileName = std::forward<InstanceProfileNameT>(value); }
77 template<
typename InstanceProfileNameT = Aws::String>
90 template<
typename InstanceProfileIdT = Aws::String>
91 void SetInstanceProfileId(InstanceProfileIdT&& value) { m_instanceProfileIdHasBeenSet =
true; m_instanceProfileId = std::forward<InstanceProfileIdT>(value); }
92 template<
typename InstanceProfileIdT = Aws::String>
105 template<
typename ArnT = Aws::String>
106 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
107 template<
typename ArnT = Aws::String>
117 template<
typename CreateDateT = Aws::Utils::DateTime>
118 void SetCreateDate(CreateDateT&& value) { m_createDateHasBeenSet =
true; m_createDate = std::forward<CreateDateT>(value); }
119 template<
typename CreateDateT = Aws::Utils::DateTime>
129 template<
typename RolesT = Aws::Vector<Role>>
130 void SetRoles(RolesT&& value) { m_rolesHasBeenSet =
true; m_roles = std::forward<RolesT>(value); }
131 template<
typename RolesT = Aws::Vector<Role>>
133 template<
typename RolesT = Role>
134 InstanceProfile&
AddRoles(RolesT&& value) { m_rolesHasBeenSet =
true; m_roles.emplace_back(std::forward<RolesT>(value));
return *
this; }
146 template<
typename TagsT = Aws::Vector<Tag>>
147 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
148 template<
typename TagsT = Aws::Vector<Tag>>
150 template<
typename TagsT = Tag>
151 InstanceProfile&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
156 bool m_pathHasBeenSet =
false;
159 bool m_instanceProfileNameHasBeenSet =
false;
162 bool m_instanceProfileIdHasBeenSet =
false;
165 bool m_arnHasBeenSet =
false;
168 bool m_createDateHasBeenSet =
false;
171 bool m_rolesHasBeenSet =
false;
174 bool m_tagsHasBeenSet =
false;
AWS_IAM_API InstanceProfile()=default
const Aws::Vector< Role > & GetRoles() const
bool RolesHasBeenSet() const
AWS_IAM_API InstanceProfile & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
InstanceProfile & WithPath(PathT &&value)
const Aws::String & GetPath() const
const Aws::String & GetInstanceProfileName() const
InstanceProfile & AddTags(TagsT &&value)
InstanceProfile & WithInstanceProfileId(InstanceProfileIdT &&value)
AWS_IAM_API InstanceProfile(const Aws::Utils::Xml::XmlNode &xmlNode)
bool InstanceProfileNameHasBeenSet() const
InstanceProfile & WithRoles(RolesT &&value)
const Aws::String & GetInstanceProfileId() const
bool InstanceProfileIdHasBeenSet() const
InstanceProfile & WithArn(ArnT &&value)
void SetTags(TagsT &&value)
InstanceProfile & AddRoles(RolesT &&value)
void SetPath(PathT &&value)
const Aws::String & GetArn() const
InstanceProfile & WithCreateDate(CreateDateT &&value)
void SetRoles(RolesT &&value)
bool PathHasBeenSet() const
void SetCreateDate(CreateDateT &&value)
const Aws::Vector< Tag > & GetTags() const
void SetArn(ArnT &&value)
bool CreateDateHasBeenSet() const
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool ArnHasBeenSet() const
void SetInstanceProfileName(InstanceProfileNameT &&value)
void SetInstanceProfileId(InstanceProfileIdT &&value)
InstanceProfile & WithTags(TagsT &&value)
const Aws::Utils::DateTime & GetCreateDate() const
InstanceProfile & WithInstanceProfileName(InstanceProfileNameT &&value)
bool TagsHasBeenSet() const
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) 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