AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
EntityInfo.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iam/IAM_EXPORTS.h>
10#include <aws/iam/model/PolicyOwnerEntityType.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace IAM {
21namespace Model {
22
32 public:
33 AWS_IAM_API EntityInfo() = default;
34 AWS_IAM_API EntityInfo(const Aws::Utils::Xml::XmlNode& xmlNode);
35 AWS_IAM_API EntityInfo& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
36
37 AWS_IAM_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_IAM_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
42 inline const Aws::String& GetArn() const { return m_arn; }
43 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
44 template <typename ArnT = Aws::String>
45 void SetArn(ArnT&& value) {
46 m_arnHasBeenSet = true;
47 m_arn = std::forward<ArnT>(value);
48 }
49 template <typename ArnT = Aws::String>
50 EntityInfo& WithArn(ArnT&& value) {
51 SetArn(std::forward<ArnT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetName() const { return m_name; }
61 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
62 template <typename NameT = Aws::String>
63 void SetName(NameT&& value) {
64 m_nameHasBeenSet = true;
65 m_name = std::forward<NameT>(value);
66 }
67 template <typename NameT = Aws::String>
68 EntityInfo& WithName(NameT&& value) {
69 SetName(std::forward<NameT>(value));
70 return *this;
71 }
73
75
78 inline PolicyOwnerEntityType GetType() const { return m_type; }
79 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
80 inline void SetType(PolicyOwnerEntityType value) {
81 m_typeHasBeenSet = true;
82 m_type = value;
83 }
85 SetType(value);
86 return *this;
87 }
89
91
94 inline const Aws::String& GetId() const { return m_id; }
95 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
96 template <typename IdT = Aws::String>
97 void SetId(IdT&& value) {
98 m_idHasBeenSet = true;
99 m_id = std::forward<IdT>(value);
100 }
101 template <typename IdT = Aws::String>
102 EntityInfo& WithId(IdT&& value) {
103 SetId(std::forward<IdT>(value));
104 return *this;
105 }
107
109
115 inline const Aws::String& GetPath() const { return m_path; }
116 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
117 template <typename PathT = Aws::String>
118 void SetPath(PathT&& value) {
119 m_pathHasBeenSet = true;
120 m_path = std::forward<PathT>(value);
121 }
122 template <typename PathT = Aws::String>
123 EntityInfo& WithPath(PathT&& value) {
124 SetPath(std::forward<PathT>(value));
125 return *this;
126 }
128 private:
129 Aws::String m_arn;
130
131 Aws::String m_name;
132
134
135 Aws::String m_id;
136
137 Aws::String m_path;
138 bool m_arnHasBeenSet = false;
139 bool m_nameHasBeenSet = false;
140 bool m_typeHasBeenSet = false;
141 bool m_idHasBeenSet = false;
142 bool m_pathHasBeenSet = false;
143};
144
145} // namespace Model
146} // namespace IAM
147} // namespace Aws
const Aws::String & GetId() const
Definition EntityInfo.h:94
EntityInfo & WithPath(PathT &&value)
Definition EntityInfo.h:123
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_IAM_API EntityInfo()=default
const Aws::String & GetName() const
Definition EntityInfo.h:60
const Aws::String & GetPath() const
Definition EntityInfo.h:115
EntityInfo & WithId(IdT &&value)
Definition EntityInfo.h:102
void SetId(IdT &&value)
Definition EntityInfo.h:97
EntityInfo & WithArn(ArnT &&value)
Definition EntityInfo.h:50
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetName(NameT &&value)
Definition EntityInfo.h:63
void SetPath(PathT &&value)
Definition EntityInfo.h:118
void SetArn(ArnT &&value)
Definition EntityInfo.h:45
EntityInfo & WithName(NameT &&value)
Definition EntityInfo.h:68
void SetType(PolicyOwnerEntityType value)
Definition EntityInfo.h:80
AWS_IAM_API EntityInfo(const Aws::Utils::Xml::XmlNode &xmlNode)
EntityInfo & WithType(PolicyOwnerEntityType value)
Definition EntityInfo.h:84
const Aws::String & GetArn() const
Definition EntityInfo.h:42
AWS_IAM_API EntityInfo & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
PolicyOwnerEntityType GetType() const
Definition EntityInfo.h:78
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream