AWS SDK for C++

AWS SDK for C++ Version 1.11.769

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/organizations/Organizations_EXPORTS.h>
10#include <aws/organizations/model/AccountJoinedMethod.h>
11#include <aws/organizations/model/AccountState.h>
12#include <aws/organizations/model/AccountStatus.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Organizations {
24namespace Model {
25
32class Account {
33 public:
34 AWS_ORGANIZATIONS_API Account() = default;
35 AWS_ORGANIZATIONS_API Account(Aws::Utils::Json::JsonView jsonValue);
36 AWS_ORGANIZATIONS_API Account& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_ORGANIZATIONS_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
45 inline const Aws::String& GetId() const { return m_id; }
46 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
47 template <typename IdT = Aws::String>
48 void SetId(IdT&& value) {
49 m_idHasBeenSet = true;
50 m_id = std::forward<IdT>(value);
51 }
52 template <typename IdT = Aws::String>
53 Account& WithId(IdT&& value) {
54 SetId(std::forward<IdT>(value));
55 return *this;
56 }
58
60
67 inline const Aws::String& GetArn() const { return m_arn; }
68 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
69 template <typename ArnT = Aws::String>
70 void SetArn(ArnT&& value) {
71 m_arnHasBeenSet = true;
72 m_arn = std::forward<ArnT>(value);
73 }
74 template <typename ArnT = Aws::String>
75 Account& WithArn(ArnT&& value) {
76 SetArn(std::forward<ArnT>(value));
77 return *this;
78 }
80
82
87 inline const Aws::String& GetEmail() const { return m_email; }
88 inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
89 template <typename EmailT = Aws::String>
90 void SetEmail(EmailT&& value) {
91 m_emailHasBeenSet = true;
92 m_email = std::forward<EmailT>(value);
93 }
94 template <typename EmailT = Aws::String>
95 Account& WithEmail(EmailT&& value) {
96 SetEmail(std::forward<EmailT>(value));
97 return *this;
98 }
100
102
108 inline const Aws::String& GetName() const { return m_name; }
109 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
110 template <typename NameT = Aws::String>
111 void SetName(NameT&& value) {
112 m_nameHasBeenSet = true;
113 m_name = std::forward<NameT>(value);
114 }
115 template <typename NameT = Aws::String>
116 Account& WithName(NameT&& value) {
117 SetName(std::forward<NameT>(value));
118 return *this;
119 }
121
123
133 inline AccountStatus GetStatus() const { return m_status; }
134 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
135 inline void SetStatus(AccountStatus value) {
136 m_statusHasBeenSet = true;
137 m_status = value;
138 }
140 SetStatus(value);
141 return *this;
142 }
144
146
155 inline AccountState GetState() const { return m_state; }
156 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
157 inline void SetState(AccountState value) {
158 m_stateHasBeenSet = true;
159 m_state = value;
160 }
162 SetState(value);
163 return *this;
164 }
166
168
171 inline AccountJoinedMethod GetJoinedMethod() const { return m_joinedMethod; }
172 inline bool JoinedMethodHasBeenSet() const { return m_joinedMethodHasBeenSet; }
174 m_joinedMethodHasBeenSet = true;
175 m_joinedMethod = value;
176 }
178 SetJoinedMethod(value);
179 return *this;
180 }
182
184
187 inline const Aws::Utils::DateTime& GetJoinedTimestamp() const { return m_joinedTimestamp; }
188 inline bool JoinedTimestampHasBeenSet() const { return m_joinedTimestampHasBeenSet; }
189 template <typename JoinedTimestampT = Aws::Utils::DateTime>
190 void SetJoinedTimestamp(JoinedTimestampT&& value) {
191 m_joinedTimestampHasBeenSet = true;
192 m_joinedTimestamp = std::forward<JoinedTimestampT>(value);
193 }
194 template <typename JoinedTimestampT = Aws::Utils::DateTime>
195 Account& WithJoinedTimestamp(JoinedTimestampT&& value) {
196 SetJoinedTimestamp(std::forward<JoinedTimestampT>(value));
197 return *this;
198 }
200 private:
201 Aws::String m_id;
202
203 Aws::String m_arn;
204
205 Aws::String m_email;
206
207 Aws::String m_name;
208
210
212
214
215 Aws::Utils::DateTime m_joinedTimestamp{};
216 bool m_idHasBeenSet = false;
217 bool m_arnHasBeenSet = false;
218 bool m_emailHasBeenSet = false;
219 bool m_nameHasBeenSet = false;
220 bool m_statusHasBeenSet = false;
221 bool m_stateHasBeenSet = false;
222 bool m_joinedMethodHasBeenSet = false;
223 bool m_joinedTimestampHasBeenSet = false;
224};
225
226} // namespace Model
227} // namespace Organizations
228} // namespace Aws
AccountStatus GetStatus() const
Definition Account.h:133
Account & WithEmail(EmailT &&value)
Definition Account.h:95
void SetArn(ArnT &&value)
Definition Account.h:70
Account & WithJoinedMethod(AccountJoinedMethod value)
Definition Account.h:177
void SetName(NameT &&value)
Definition Account.h:111
Account & WithArn(ArnT &&value)
Definition Account.h:75
const Aws::String & GetArn() const
Definition Account.h:67
const Aws::String & GetId() const
Definition Account.h:45
void SetJoinedTimestamp(JoinedTimestampT &&value)
Definition Account.h:190
AWS_ORGANIZATIONS_API Account(Aws::Utils::Json::JsonView jsonValue)
Account & WithState(AccountState value)
Definition Account.h:161
void SetJoinedMethod(AccountJoinedMethod value)
Definition Account.h:173
Account & WithJoinedTimestamp(JoinedTimestampT &&value)
Definition Account.h:195
Account & WithName(NameT &&value)
Definition Account.h:116
void SetState(AccountState value)
Definition Account.h:157
AWS_ORGANIZATIONS_API Account & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetStatus(AccountStatus value)
Definition Account.h:135
const Aws::String & GetEmail() const
Definition Account.h:87
AWS_ORGANIZATIONS_API Account()=default
const Aws::Utils::DateTime & GetJoinedTimestamp() const
Definition Account.h:187
AccountState GetState() const
Definition Account.h:155
Account & WithStatus(AccountStatus value)
Definition Account.h:139
AccountJoinedMethod GetJoinedMethod() const
Definition Account.h:171
Account & WithId(IdT &&value)
Definition Account.h:53
AWS_ORGANIZATIONS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetEmail(EmailT &&value)
Definition Account.h:90
const Aws::String & GetName() const
Definition Account.h:108
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue