AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
EntityInfo.h
1
6#pragma once
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/iam/model/PolicyOwnerEntityType.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace IAM
23{
24namespace Model
25{
26
36 {
37 public:
38 AWS_IAM_API EntityInfo() = default;
39 AWS_IAM_API EntityInfo(const Aws::Utils::Xml::XmlNode& xmlNode);
40 AWS_IAM_API EntityInfo& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
41
42 AWS_IAM_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
43 AWS_IAM_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
44
45
47
48 inline const Aws::String& GetArn() const { return m_arn; }
49 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
50 template<typename ArnT = Aws::String>
51 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
52 template<typename ArnT = Aws::String>
53 EntityInfo& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
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) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
64 template<typename NameT = Aws::String>
65 EntityInfo& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
67
69
72 inline PolicyOwnerEntityType GetType() const { return m_type; }
73 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
74 inline void SetType(PolicyOwnerEntityType value) { m_typeHasBeenSet = true; m_type = value; }
75 inline EntityInfo& WithType(PolicyOwnerEntityType value) { SetType(value); return *this;}
77
79
82 inline const Aws::String& GetId() const { return m_id; }
83 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
84 template<typename IdT = Aws::String>
85 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
86 template<typename IdT = Aws::String>
87 EntityInfo& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
89
91
97 inline const Aws::String& GetPath() const { return m_path; }
98 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
99 template<typename PathT = Aws::String>
100 void SetPath(PathT&& value) { m_pathHasBeenSet = true; m_path = std::forward<PathT>(value); }
101 template<typename PathT = Aws::String>
102 EntityInfo& WithPath(PathT&& value) { SetPath(std::forward<PathT>(value)); return *this;}
104 private:
105
106 Aws::String m_arn;
107 bool m_arnHasBeenSet = false;
108
109 Aws::String m_name;
110 bool m_nameHasBeenSet = false;
111
113 bool m_typeHasBeenSet = false;
114
115 Aws::String m_id;
116 bool m_idHasBeenSet = false;
117
118 Aws::String m_path;
119 bool m_pathHasBeenSet = false;
120 };
121
122} // namespace Model
123} // namespace IAM
124} // namespace Aws
const Aws::String & GetId() const
Definition EntityInfo.h:82
EntityInfo & WithPath(PathT &&value)
Definition EntityInfo.h:102
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:97
EntityInfo & WithId(IdT &&value)
Definition EntityInfo.h:87
void SetId(IdT &&value)
Definition EntityInfo.h:85
EntityInfo & WithArn(ArnT &&value)
Definition EntityInfo.h:53
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:100
void SetArn(ArnT &&value)
Definition EntityInfo.h:51
EntityInfo & WithName(NameT &&value)
Definition EntityInfo.h:65
void SetType(PolicyOwnerEntityType value)
Definition EntityInfo.h:74
AWS_IAM_API EntityInfo(const Aws::Utils::Xml::XmlNode &xmlNode)
EntityInfo & WithType(PolicyOwnerEntityType value)
Definition EntityInfo.h:75
const Aws::String & GetArn() const
Definition EntityInfo.h:48
AWS_IAM_API EntityInfo & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
PolicyOwnerEntityType GetType() const
Definition EntityInfo.h:72
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream