AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
Group.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/iam/IAM_EXPORTS.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
35class Group {
36 public:
37 AWS_IAM_API Group() = default;
38 AWS_IAM_API Group(const Aws::Utils::Xml::XmlNode& xmlNode);
39 AWS_IAM_API Group& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
40
41 AWS_IAM_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
42 AWS_IAM_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
43
45
50 inline const Aws::String& GetPath() const { return m_path; }
51 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
52 template <typename PathT = Aws::String>
53 void SetPath(PathT&& value) {
54 m_pathHasBeenSet = true;
55 m_path = std::forward<PathT>(value);
56 }
57 template <typename PathT = Aws::String>
58 Group& WithPath(PathT&& value) {
59 SetPath(std::forward<PathT>(value));
60 return *this;
61 }
63
65
68 inline const Aws::String& GetGroupName() const { return m_groupName; }
69 inline bool GroupNameHasBeenSet() const { return m_groupNameHasBeenSet; }
70 template <typename GroupNameT = Aws::String>
71 void SetGroupName(GroupNameT&& value) {
72 m_groupNameHasBeenSet = true;
73 m_groupName = std::forward<GroupNameT>(value);
74 }
75 template <typename GroupNameT = Aws::String>
76 Group& WithGroupName(GroupNameT&& value) {
77 SetGroupName(std::forward<GroupNameT>(value));
78 return *this;
79 }
81
83
89 inline const Aws::String& GetGroupId() const { return m_groupId; }
90 inline bool GroupIdHasBeenSet() const { return m_groupIdHasBeenSet; }
91 template <typename GroupIdT = Aws::String>
92 void SetGroupId(GroupIdT&& value) {
93 m_groupIdHasBeenSet = true;
94 m_groupId = std::forward<GroupIdT>(value);
95 }
96 template <typename GroupIdT = Aws::String>
97 Group& WithGroupId(GroupIdT&& value) {
98 SetGroupId(std::forward<GroupIdT>(value));
99 return *this;
100 }
102
104
110 inline const Aws::String& GetArn() const { return m_arn; }
111 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
112 template <typename ArnT = Aws::String>
113 void SetArn(ArnT&& value) {
114 m_arnHasBeenSet = true;
115 m_arn = std::forward<ArnT>(value);
116 }
117 template <typename ArnT = Aws::String>
118 Group& WithArn(ArnT&& value) {
119 SetArn(std::forward<ArnT>(value));
120 return *this;
121 }
123
125
129 inline const Aws::Utils::DateTime& GetCreateDate() const { return m_createDate; }
130 inline bool CreateDateHasBeenSet() const { return m_createDateHasBeenSet; }
131 template <typename CreateDateT = Aws::Utils::DateTime>
132 void SetCreateDate(CreateDateT&& value) {
133 m_createDateHasBeenSet = true;
134 m_createDate = std::forward<CreateDateT>(value);
135 }
136 template <typename CreateDateT = Aws::Utils::DateTime>
137 Group& WithCreateDate(CreateDateT&& value) {
138 SetCreateDate(std::forward<CreateDateT>(value));
139 return *this;
140 }
142 private:
143 Aws::String m_path;
144
145 Aws::String m_groupName;
146
147 Aws::String m_groupId;
148
149 Aws::String m_arn;
150
151 Aws::Utils::DateTime m_createDate{};
152 bool m_pathHasBeenSet = false;
153 bool m_groupNameHasBeenSet = false;
154 bool m_groupIdHasBeenSet = false;
155 bool m_arnHasBeenSet = false;
156 bool m_createDateHasBeenSet = false;
157};
158
159} // namespace Model
160} // namespace IAM
161} // namespace Aws
void SetArn(ArnT &&value)
Definition Group.h:113
Group & WithGroupName(GroupNameT &&value)
Definition Group.h:76
Group & WithCreateDate(CreateDateT &&value)
Definition Group.h:137
const Aws::Utils::DateTime & GetCreateDate() const
Definition Group.h:129
const Aws::String & GetGroupId() const
Definition Group.h:89
const Aws::String & GetPath() const
Definition Group.h:50
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetGroupName(GroupNameT &&value)
Definition Group.h:71
AWS_IAM_API Group(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetGroupId(GroupIdT &&value)
Definition Group.h:92
bool ArnHasBeenSet() const
Definition Group.h:111
const Aws::String & GetGroupName() const
Definition Group.h:68
void SetCreateDate(CreateDateT &&value)
Definition Group.h:132
bool CreateDateHasBeenSet() const
Definition Group.h:130
void SetPath(PathT &&value)
Definition Group.h:53
Group & WithArn(ArnT &&value)
Definition Group.h:118
const Aws::String & GetArn() const
Definition Group.h:110
Group & WithGroupId(GroupIdT &&value)
Definition Group.h:97
bool PathHasBeenSet() const
Definition Group.h:51
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool GroupIdHasBeenSet() const
Definition Group.h:90
AWS_IAM_API Group & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Group & WithPath(PathT &&value)
Definition Group.h:58
AWS_IAM_API Group()=default
bool GroupNameHasBeenSet() const
Definition Group.h:69
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream