AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
Account.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/organizations/Organizations_EXPORTS.h>
11#include <aws/organizations/model/AccountJoinedMethod.h>
12#include <aws/organizations/model/AccountState.h>
13#include <aws/organizations/model/AccountStatus.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Organizations {
25namespace Model {
26
33class Account {
34 public:
35 AWS_ORGANIZATIONS_API Account() = default;
36 AWS_ORGANIZATIONS_API Account(Aws::Utils::Json::JsonView jsonValue);
37 AWS_ORGANIZATIONS_API Account& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_ORGANIZATIONS_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
46 inline const Aws::String& GetId() const { return m_id; }
47 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
48 template <typename IdT = Aws::String>
49 void SetId(IdT&& value) {
50 m_idHasBeenSet = true;
51 m_id = std::forward<IdT>(value);
52 }
53 template <typename IdT = Aws::String>
54 Account& WithId(IdT&& value) {
55 SetId(std::forward<IdT>(value));
56 return *this;
57 }
59
61
68 inline const Aws::String& GetArn() const { return m_arn; }
69 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
70 template <typename ArnT = Aws::String>
71 void SetArn(ArnT&& value) {
72 m_arnHasBeenSet = true;
73 m_arn = std::forward<ArnT>(value);
74 }
75 template <typename ArnT = Aws::String>
76 Account& WithArn(ArnT&& value) {
77 SetArn(std::forward<ArnT>(value));
78 return *this;
79 }
81
83
88 inline const Aws::String& GetEmail() const { return m_email; }
89 inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
90 template <typename EmailT = Aws::String>
91 void SetEmail(EmailT&& value) {
92 m_emailHasBeenSet = true;
93 m_email = std::forward<EmailT>(value);
94 }
95 template <typename EmailT = Aws::String>
96 Account& WithEmail(EmailT&& value) {
97 SetEmail(std::forward<EmailT>(value));
98 return *this;
99 }
101
103
109 inline const Aws::String& GetName() const { return m_name; }
110 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
111 template <typename NameT = Aws::String>
112 void SetName(NameT&& value) {
113 m_nameHasBeenSet = true;
114 m_name = std::forward<NameT>(value);
115 }
116 template <typename NameT = Aws::String>
117 Account& WithName(NameT&& value) {
118 SetName(std::forward<NameT>(value));
119 return *this;
120 }
122
124
134 inline AccountStatus GetStatus() const { return m_status; }
135 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
136 inline void SetStatus(AccountStatus value) {
137 m_statusHasBeenSet = true;
138 m_status = value;
139 }
141 SetStatus(value);
142 return *this;
143 }
145
147
156 inline AccountState GetState() const { return m_state; }
157 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
158 inline void SetState(AccountState value) {
159 m_stateHasBeenSet = true;
160 m_state = value;
161 }
163 SetState(value);
164 return *this;
165 }
167
169
172 inline const Aws::Vector<Aws::String>& GetPaths() const { return m_paths; }
173 inline bool PathsHasBeenSet() const { return m_pathsHasBeenSet; }
174 template <typename PathsT = Aws::Vector<Aws::String>>
175 void SetPaths(PathsT&& value) {
176 m_pathsHasBeenSet = true;
177 m_paths = std::forward<PathsT>(value);
178 }
179 template <typename PathsT = Aws::Vector<Aws::String>>
180 Account& WithPaths(PathsT&& value) {
181 SetPaths(std::forward<PathsT>(value));
182 return *this;
183 }
184 template <typename PathsT = Aws::String>
185 Account& AddPaths(PathsT&& value) {
186 m_pathsHasBeenSet = true;
187 m_paths.emplace_back(std::forward<PathsT>(value));
188 return *this;
189 }
191
193
196 inline AccountJoinedMethod GetJoinedMethod() const { return m_joinedMethod; }
197 inline bool JoinedMethodHasBeenSet() const { return m_joinedMethodHasBeenSet; }
199 m_joinedMethodHasBeenSet = true;
200 m_joinedMethod = value;
201 }
203 SetJoinedMethod(value);
204 return *this;
205 }
207
209
212 inline const Aws::Utils::DateTime& GetJoinedTimestamp() const { return m_joinedTimestamp; }
213 inline bool JoinedTimestampHasBeenSet() const { return m_joinedTimestampHasBeenSet; }
214 template <typename JoinedTimestampT = Aws::Utils::DateTime>
215 void SetJoinedTimestamp(JoinedTimestampT&& value) {
216 m_joinedTimestampHasBeenSet = true;
217 m_joinedTimestamp = std::forward<JoinedTimestampT>(value);
218 }
219 template <typename JoinedTimestampT = Aws::Utils::DateTime>
220 Account& WithJoinedTimestamp(JoinedTimestampT&& value) {
221 SetJoinedTimestamp(std::forward<JoinedTimestampT>(value));
222 return *this;
223 }
225 private:
226 Aws::String m_id;
227
228 Aws::String m_arn;
229
230 Aws::String m_email;
231
232 Aws::String m_name;
233
235
237
239
241
242 Aws::Utils::DateTime m_joinedTimestamp{};
243 bool m_idHasBeenSet = false;
244 bool m_arnHasBeenSet = false;
245 bool m_emailHasBeenSet = false;
246 bool m_nameHasBeenSet = false;
247 bool m_statusHasBeenSet = false;
248 bool m_stateHasBeenSet = false;
249 bool m_pathsHasBeenSet = false;
250 bool m_joinedMethodHasBeenSet = false;
251 bool m_joinedTimestampHasBeenSet = false;
252};
253
254} // namespace Model
255} // namespace Organizations
256} // namespace Aws
const Aws::Vector< Aws::String > & GetPaths() const
Definition Account.h:172
AccountStatus GetStatus() const
Definition Account.h:134
Account & WithEmail(EmailT &&value)
Definition Account.h:96
void SetArn(ArnT &&value)
Definition Account.h:71
Account & WithJoinedMethod(AccountJoinedMethod value)
Definition Account.h:202
void SetName(NameT &&value)
Definition Account.h:112
Account & WithArn(ArnT &&value)
Definition Account.h:76
const Aws::String & GetArn() const
Definition Account.h:68
const Aws::String & GetId() const
Definition Account.h:46
void SetJoinedTimestamp(JoinedTimestampT &&value)
Definition Account.h:215
AWS_ORGANIZATIONS_API Account(Aws::Utils::Json::JsonView jsonValue)
Account & WithState(AccountState value)
Definition Account.h:162
void SetJoinedMethod(AccountJoinedMethod value)
Definition Account.h:198
Account & WithJoinedTimestamp(JoinedTimestampT &&value)
Definition Account.h:220
Account & WithName(NameT &&value)
Definition Account.h:117
void SetState(AccountState value)
Definition Account.h:158
AWS_ORGANIZATIONS_API Account & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetStatus(AccountStatus value)
Definition Account.h:136
Account & WithPaths(PathsT &&value)
Definition Account.h:180
const Aws::String & GetEmail() const
Definition Account.h:88
AWS_ORGANIZATIONS_API Account()=default
const Aws::Utils::DateTime & GetJoinedTimestamp() const
Definition Account.h:212
AccountState GetState() const
Definition Account.h:156
Account & WithStatus(AccountStatus value)
Definition Account.h:140
AccountJoinedMethod GetJoinedMethod() const
Definition Account.h:196
Account & WithId(IdT &&value)
Definition Account.h:54
AWS_ORGANIZATIONS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetEmail(EmailT &&value)
Definition Account.h:91
const Aws::String & GetName() const
Definition Account.h:109
void SetPaths(PathsT &&value)
Definition Account.h:175
Account & AddPaths(PathsT &&value)
Definition Account.h:185
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue