AWS SDK for C++

AWS SDK for C++ Version 1.11.643

Loading...
Searching...
No Matches
Account.h
1
6#pragma once
7#include <aws/organizations/Organizations_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/organizations/model/AccountStatus.h>
10#include <aws/organizations/model/AccountState.h>
11#include <aws/organizations/model/AccountJoinedMethod.h>
12#include <aws/core/utils/DateTime.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Organizations
26{
27namespace Model
28{
29
36 class Account
37 {
38 public:
39 AWS_ORGANIZATIONS_API Account() = default;
40 AWS_ORGANIZATIONS_API Account(Aws::Utils::Json::JsonView jsonValue);
41 AWS_ORGANIZATIONS_API Account& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_ORGANIZATIONS_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
51 inline const Aws::String& GetId() const { return m_id; }
52 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
53 template<typename IdT = Aws::String>
54 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
55 template<typename IdT = Aws::String>
56 Account& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
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) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
71 template<typename ArnT = Aws::String>
72 Account& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
74
76
81 inline const Aws::String& GetEmail() const { return m_email; }
82 inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
83 template<typename EmailT = Aws::String>
84 void SetEmail(EmailT&& value) { m_emailHasBeenSet = true; m_email = std::forward<EmailT>(value); }
85 template<typename EmailT = Aws::String>
86 Account& WithEmail(EmailT&& value) { SetEmail(std::forward<EmailT>(value)); return *this;}
88
90
96 inline const Aws::String& GetName() const { return m_name; }
97 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
98 template<typename NameT = Aws::String>
99 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
100 template<typename NameT = Aws::String>
101 Account& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
103
105
115 inline AccountStatus GetStatus() const { return m_status; }
116 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
117 inline void SetStatus(AccountStatus value) { m_statusHasBeenSet = true; m_status = value; }
118 inline Account& WithStatus(AccountStatus value) { SetStatus(value); return *this;}
120
122
131 inline AccountState GetState() const { return m_state; }
132 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
133 inline void SetState(AccountState value) { m_stateHasBeenSet = true; m_state = value; }
134 inline Account& WithState(AccountState value) { SetState(value); return *this;}
136
138
141 inline AccountJoinedMethod GetJoinedMethod() const { return m_joinedMethod; }
142 inline bool JoinedMethodHasBeenSet() const { return m_joinedMethodHasBeenSet; }
143 inline void SetJoinedMethod(AccountJoinedMethod value) { m_joinedMethodHasBeenSet = true; m_joinedMethod = value; }
144 inline Account& WithJoinedMethod(AccountJoinedMethod value) { SetJoinedMethod(value); return *this;}
146
148
151 inline const Aws::Utils::DateTime& GetJoinedTimestamp() const { return m_joinedTimestamp; }
152 inline bool JoinedTimestampHasBeenSet() const { return m_joinedTimestampHasBeenSet; }
153 template<typename JoinedTimestampT = Aws::Utils::DateTime>
154 void SetJoinedTimestamp(JoinedTimestampT&& value) { m_joinedTimestampHasBeenSet = true; m_joinedTimestamp = std::forward<JoinedTimestampT>(value); }
155 template<typename JoinedTimestampT = Aws::Utils::DateTime>
156 Account& WithJoinedTimestamp(JoinedTimestampT&& value) { SetJoinedTimestamp(std::forward<JoinedTimestampT>(value)); return *this;}
158 private:
159
160 Aws::String m_id;
161 bool m_idHasBeenSet = false;
162
163 Aws::String m_arn;
164 bool m_arnHasBeenSet = false;
165
166 Aws::String m_email;
167 bool m_emailHasBeenSet = false;
168
169 Aws::String m_name;
170 bool m_nameHasBeenSet = false;
171
173 bool m_statusHasBeenSet = false;
174
176 bool m_stateHasBeenSet = false;
177
179 bool m_joinedMethodHasBeenSet = false;
180
181 Aws::Utils::DateTime m_joinedTimestamp{};
182 bool m_joinedTimestampHasBeenSet = false;
183 };
184
185} // namespace Model
186} // namespace Organizations
187} // namespace Aws
AccountStatus GetStatus() const
Definition Account.h:115
Account & WithEmail(EmailT &&value)
Definition Account.h:86
void SetArn(ArnT &&value)
Definition Account.h:70
Account & WithJoinedMethod(AccountJoinedMethod value)
Definition Account.h:144
void SetName(NameT &&value)
Definition Account.h:99
Account & WithArn(ArnT &&value)
Definition Account.h:72
const Aws::String & GetArn() const
Definition Account.h:67
const Aws::String & GetId() const
Definition Account.h:51
void SetJoinedTimestamp(JoinedTimestampT &&value)
Definition Account.h:154
AWS_ORGANIZATIONS_API Account(Aws::Utils::Json::JsonView jsonValue)
Account & WithState(AccountState value)
Definition Account.h:134
void SetJoinedMethod(AccountJoinedMethod value)
Definition Account.h:143
Account & WithJoinedTimestamp(JoinedTimestampT &&value)
Definition Account.h:156
Account & WithName(NameT &&value)
Definition Account.h:101
void SetState(AccountState value)
Definition Account.h:133
AWS_ORGANIZATIONS_API Account & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetStatus(AccountStatus value)
Definition Account.h:117
const Aws::String & GetEmail() const
Definition Account.h:81
AWS_ORGANIZATIONS_API Account()=default
const Aws::Utils::DateTime & GetJoinedTimestamp() const
Definition Account.h:151
AccountState GetState() const
Definition Account.h:131
Account & WithStatus(AccountStatus value)
Definition Account.h:118
AccountJoinedMethod GetJoinedMethod() const
Definition Account.h:141
Account & WithId(IdT &&value)
Definition Account.h:56
AWS_ORGANIZATIONS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetEmail(EmailT &&value)
Definition Account.h:84
const Aws::String & GetName() const
Definition Account.h:96
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue