AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
SubjectDetail.h
1
6#pragma once
7#include <aws/rolesanywhere/RolesAnywhere_EXPORTS.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/rolesanywhere/model/CredentialSummary.h>
12#include <aws/rolesanywhere/model/InstanceProperty.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 RolesAnywhere
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_ROLESANYWHERE_API SubjectDetail() = default;
40 AWS_ROLESANYWHERE_API SubjectDetail(Aws::Utils::Json::JsonView jsonValue);
41 AWS_ROLESANYWHERE_API SubjectDetail& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_ROLESANYWHERE_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
50 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
51 template<typename CreatedAtT = Aws::Utils::DateTime>
52 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::forward<CreatedAtT>(value); }
53 template<typename CreatedAtT = Aws::Utils::DateTime>
54 SubjectDetail& WithCreatedAt(CreatedAtT&& value) { SetCreatedAt(std::forward<CreatedAtT>(value)); return *this;}
56
58
62 inline const Aws::Vector<CredentialSummary>& GetCredentials() const { return m_credentials; }
63 inline bool CredentialsHasBeenSet() const { return m_credentialsHasBeenSet; }
64 template<typename CredentialsT = Aws::Vector<CredentialSummary>>
65 void SetCredentials(CredentialsT&& value) { m_credentialsHasBeenSet = true; m_credentials = std::forward<CredentialsT>(value); }
66 template<typename CredentialsT = Aws::Vector<CredentialSummary>>
67 SubjectDetail& WithCredentials(CredentialsT&& value) { SetCredentials(std::forward<CredentialsT>(value)); return *this;}
68 template<typename CredentialsT = CredentialSummary>
69 SubjectDetail& AddCredentials(CredentialsT&& value) { m_credentialsHasBeenSet = true; m_credentials.emplace_back(std::forward<CredentialsT>(value)); return *this; }
71
73
76 inline bool GetEnabled() const { return m_enabled; }
77 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
78 inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; }
79 inline SubjectDetail& WithEnabled(bool value) { SetEnabled(value); return *this;}
81
83
86 inline const Aws::Vector<InstanceProperty>& GetInstanceProperties() const { return m_instanceProperties; }
87 inline bool InstancePropertiesHasBeenSet() const { return m_instancePropertiesHasBeenSet; }
88 template<typename InstancePropertiesT = Aws::Vector<InstanceProperty>>
89 void SetInstanceProperties(InstancePropertiesT&& value) { m_instancePropertiesHasBeenSet = true; m_instanceProperties = std::forward<InstancePropertiesT>(value); }
90 template<typename InstancePropertiesT = Aws::Vector<InstanceProperty>>
91 SubjectDetail& WithInstanceProperties(InstancePropertiesT&& value) { SetInstanceProperties(std::forward<InstancePropertiesT>(value)); return *this;}
92 template<typename InstancePropertiesT = InstanceProperty>
93 SubjectDetail& AddInstanceProperties(InstancePropertiesT&& value) { m_instancePropertiesHasBeenSet = true; m_instanceProperties.emplace_back(std::forward<InstancePropertiesT>(value)); return *this; }
95
97
101 inline const Aws::Utils::DateTime& GetLastSeenAt() const { return m_lastSeenAt; }
102 inline bool LastSeenAtHasBeenSet() const { return m_lastSeenAtHasBeenSet; }
103 template<typename LastSeenAtT = Aws::Utils::DateTime>
104 void SetLastSeenAt(LastSeenAtT&& value) { m_lastSeenAtHasBeenSet = true; m_lastSeenAt = std::forward<LastSeenAtT>(value); }
105 template<typename LastSeenAtT = Aws::Utils::DateTime>
106 SubjectDetail& WithLastSeenAt(LastSeenAtT&& value) { SetLastSeenAt(std::forward<LastSeenAtT>(value)); return *this;}
108
110
113 inline const Aws::String& GetSubjectArn() const { return m_subjectArn; }
114 inline bool SubjectArnHasBeenSet() const { return m_subjectArnHasBeenSet; }
115 template<typename SubjectArnT = Aws::String>
116 void SetSubjectArn(SubjectArnT&& value) { m_subjectArnHasBeenSet = true; m_subjectArn = std::forward<SubjectArnT>(value); }
117 template<typename SubjectArnT = Aws::String>
118 SubjectDetail& WithSubjectArn(SubjectArnT&& value) { SetSubjectArn(std::forward<SubjectArnT>(value)); return *this;}
120
122
125 inline const Aws::String& GetSubjectId() const { return m_subjectId; }
126 inline bool SubjectIdHasBeenSet() const { return m_subjectIdHasBeenSet; }
127 template<typename SubjectIdT = Aws::String>
128 void SetSubjectId(SubjectIdT&& value) { m_subjectIdHasBeenSet = true; m_subjectId = std::forward<SubjectIdT>(value); }
129 template<typename SubjectIdT = Aws::String>
130 SubjectDetail& WithSubjectId(SubjectIdT&& value) { SetSubjectId(std::forward<SubjectIdT>(value)); return *this;}
132
134
137 inline const Aws::Utils::DateTime& GetUpdatedAt() const { return m_updatedAt; }
138 inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; }
139 template<typename UpdatedAtT = Aws::Utils::DateTime>
140 void SetUpdatedAt(UpdatedAtT&& value) { m_updatedAtHasBeenSet = true; m_updatedAt = std::forward<UpdatedAtT>(value); }
141 template<typename UpdatedAtT = Aws::Utils::DateTime>
142 SubjectDetail& WithUpdatedAt(UpdatedAtT&& value) { SetUpdatedAt(std::forward<UpdatedAtT>(value)); return *this;}
144
146
149 inline const Aws::String& GetX509Subject() const { return m_x509Subject; }
150 inline bool X509SubjectHasBeenSet() const { return m_x509SubjectHasBeenSet; }
151 template<typename X509SubjectT = Aws::String>
152 void SetX509Subject(X509SubjectT&& value) { m_x509SubjectHasBeenSet = true; m_x509Subject = std::forward<X509SubjectT>(value); }
153 template<typename X509SubjectT = Aws::String>
154 SubjectDetail& WithX509Subject(X509SubjectT&& value) { SetX509Subject(std::forward<X509SubjectT>(value)); return *this;}
156 private:
157
158 Aws::Utils::DateTime m_createdAt{};
159 bool m_createdAtHasBeenSet = false;
160
161 Aws::Vector<CredentialSummary> m_credentials;
162 bool m_credentialsHasBeenSet = false;
163
164 bool m_enabled{false};
165 bool m_enabledHasBeenSet = false;
166
167 Aws::Vector<InstanceProperty> m_instanceProperties;
168 bool m_instancePropertiesHasBeenSet = false;
169
170 Aws::Utils::DateTime m_lastSeenAt{};
171 bool m_lastSeenAtHasBeenSet = false;
172
173 Aws::String m_subjectArn;
174 bool m_subjectArnHasBeenSet = false;
175
176 Aws::String m_subjectId;
177 bool m_subjectIdHasBeenSet = false;
178
179 Aws::Utils::DateTime m_updatedAt{};
180 bool m_updatedAtHasBeenSet = false;
181
182 Aws::String m_x509Subject;
183 bool m_x509SubjectHasBeenSet = false;
184 };
185
186} // namespace Model
187} // namespace RolesAnywhere
188} // namespace Aws
AWS_ROLESANYWHERE_API SubjectDetail()=default
const Aws::Utils::DateTime & GetLastSeenAt() const
const Aws::String & GetSubjectArn() const
SubjectDetail & AddCredentials(CredentialsT &&value)
AWS_ROLESANYWHERE_API SubjectDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< InstanceProperty > & GetInstanceProperties() const
AWS_ROLESANYWHERE_API SubjectDetail(Aws::Utils::Json::JsonView jsonValue)
void SetX509Subject(X509SubjectT &&value)
SubjectDetail & WithCredentials(CredentialsT &&value)
const Aws::Utils::DateTime & GetUpdatedAt() const
const Aws::String & GetSubjectId() const
void SetCredentials(CredentialsT &&value)
SubjectDetail & WithSubjectArn(SubjectArnT &&value)
void SetSubjectArn(SubjectArnT &&value)
AWS_ROLESANYWHERE_API Aws::Utils::Json::JsonValue Jsonize() const
SubjectDetail & WithCreatedAt(CreatedAtT &&value)
SubjectDetail & WithSubjectId(SubjectIdT &&value)
SubjectDetail & WithLastSeenAt(LastSeenAtT &&value)
const Aws::Vector< CredentialSummary > & GetCredentials() const
SubjectDetail & WithUpdatedAt(UpdatedAtT &&value)
SubjectDetail & WithEnabled(bool value)
SubjectDetail & WithInstanceProperties(InstancePropertiesT &&value)
SubjectDetail & AddInstanceProperties(InstancePropertiesT &&value)
void SetInstanceProperties(InstancePropertiesT &&value)
void SetLastSeenAt(LastSeenAtT &&value)
const Aws::Utils::DateTime & GetCreatedAt() const
void SetCreatedAt(CreatedAtT &&value)
const Aws::String & GetX509Subject() const
SubjectDetail & WithX509Subject(X509SubjectT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue