/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A summary representation of subjects.See Also:
AWS
* API Reference
The ISO-8601 time stamp of when the certificate was first used in a temporary * credential request.
*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *The ISO-8601 time stamp of when the certificate was first used in a temporary * credential request.
*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *The ISO-8601 time stamp of when the certificate was first used in a temporary * credential request.
*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *The ISO-8601 time stamp of when the certificate was first used in a temporary * credential request.
*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *The ISO-8601 time stamp of when the certificate was first used in a temporary * credential request.
*/ inline SubjectSummary& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *The ISO-8601 time stamp of when the certificate was first used in a temporary * credential request.
*/ inline SubjectSummary& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *The enabled status of the subject.
*/ inline bool GetEnabled() const{ return m_enabled; } /** *The enabled status of the subject.
*/ inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } /** *The enabled status of the subject.
*/ inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } /** *The enabled status of the subject.
*/ inline SubjectSummary& WithEnabled(bool value) { SetEnabled(value); return *this;} /** *The ISO-8601 time stamp of when the certificate was last used in a temporary * credential request.
*/ inline const Aws::Utils::DateTime& GetLastSeenAt() const{ return m_lastSeenAt; } /** *The ISO-8601 time stamp of when the certificate was last used in a temporary * credential request.
*/ inline bool LastSeenAtHasBeenSet() const { return m_lastSeenAtHasBeenSet; } /** *The ISO-8601 time stamp of when the certificate was last used in a temporary * credential request.
*/ inline void SetLastSeenAt(const Aws::Utils::DateTime& value) { m_lastSeenAtHasBeenSet = true; m_lastSeenAt = value; } /** *The ISO-8601 time stamp of when the certificate was last used in a temporary * credential request.
*/ inline void SetLastSeenAt(Aws::Utils::DateTime&& value) { m_lastSeenAtHasBeenSet = true; m_lastSeenAt = std::move(value); } /** *The ISO-8601 time stamp of when the certificate was last used in a temporary * credential request.
*/ inline SubjectSummary& WithLastSeenAt(const Aws::Utils::DateTime& value) { SetLastSeenAt(value); return *this;} /** *The ISO-8601 time stamp of when the certificate was last used in a temporary * credential request.
*/ inline SubjectSummary& WithLastSeenAt(Aws::Utils::DateTime&& value) { SetLastSeenAt(std::move(value)); return *this;} /** *The ARN of the resource.
*/ inline const Aws::String& GetSubjectArn() const{ return m_subjectArn; } /** *The ARN of the resource.
*/ inline bool SubjectArnHasBeenSet() const { return m_subjectArnHasBeenSet; } /** *The ARN of the resource.
*/ inline void SetSubjectArn(const Aws::String& value) { m_subjectArnHasBeenSet = true; m_subjectArn = value; } /** *The ARN of the resource.
*/ inline void SetSubjectArn(Aws::String&& value) { m_subjectArnHasBeenSet = true; m_subjectArn = std::move(value); } /** *The ARN of the resource.
*/ inline void SetSubjectArn(const char* value) { m_subjectArnHasBeenSet = true; m_subjectArn.assign(value); } /** *The ARN of the resource.
*/ inline SubjectSummary& WithSubjectArn(const Aws::String& value) { SetSubjectArn(value); return *this;} /** *The ARN of the resource.
*/ inline SubjectSummary& WithSubjectArn(Aws::String&& value) { SetSubjectArn(std::move(value)); return *this;} /** *The ARN of the resource.
*/ inline SubjectSummary& WithSubjectArn(const char* value) { SetSubjectArn(value); return *this;} /** *The id of the resource.
*/ inline const Aws::String& GetSubjectId() const{ return m_subjectId; } /** *The id of the resource.
*/ inline bool SubjectIdHasBeenSet() const { return m_subjectIdHasBeenSet; } /** *The id of the resource.
*/ inline void SetSubjectId(const Aws::String& value) { m_subjectIdHasBeenSet = true; m_subjectId = value; } /** *The id of the resource.
*/ inline void SetSubjectId(Aws::String&& value) { m_subjectIdHasBeenSet = true; m_subjectId = std::move(value); } /** *The id of the resource.
*/ inline void SetSubjectId(const char* value) { m_subjectIdHasBeenSet = true; m_subjectId.assign(value); } /** *The id of the resource.
*/ inline SubjectSummary& WithSubjectId(const Aws::String& value) { SetSubjectId(value); return *this;} /** *The id of the resource.
*/ inline SubjectSummary& WithSubjectId(Aws::String&& value) { SetSubjectId(std::move(value)); return *this;} /** *The id of the resource.
*/ inline SubjectSummary& WithSubjectId(const char* value) { SetSubjectId(value); return *this;} /** *The ISO-8601 timestamp when the subject was last updated.
*/ inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } /** *The ISO-8601 timestamp when the subject was last updated.
*/ inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; } /** *The ISO-8601 timestamp when the subject was last updated.
*/ inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAtHasBeenSet = true; m_updatedAt = value; } /** *The ISO-8601 timestamp when the subject was last updated.
*/ inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAtHasBeenSet = true; m_updatedAt = std::move(value); } /** *The ISO-8601 timestamp when the subject was last updated.
*/ inline SubjectSummary& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} /** *The ISO-8601 timestamp when the subject was last updated.
*/ inline SubjectSummary& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;} /** *The x509 principal identifier of the authenticating certificate.
*/ inline const Aws::String& GetX509Subject() const{ return m_x509Subject; } /** *The x509 principal identifier of the authenticating certificate.
*/ inline bool X509SubjectHasBeenSet() const { return m_x509SubjectHasBeenSet; } /** *The x509 principal identifier of the authenticating certificate.
*/ inline void SetX509Subject(const Aws::String& value) { m_x509SubjectHasBeenSet = true; m_x509Subject = value; } /** *The x509 principal identifier of the authenticating certificate.
*/ inline void SetX509Subject(Aws::String&& value) { m_x509SubjectHasBeenSet = true; m_x509Subject = std::move(value); } /** *The x509 principal identifier of the authenticating certificate.
*/ inline void SetX509Subject(const char* value) { m_x509SubjectHasBeenSet = true; m_x509Subject.assign(value); } /** *The x509 principal identifier of the authenticating certificate.
*/ inline SubjectSummary& WithX509Subject(const Aws::String& value) { SetX509Subject(value); return *this;} /** *The x509 principal identifier of the authenticating certificate.
*/ inline SubjectSummary& WithX509Subject(Aws::String&& value) { SetX509Subject(std::move(value)); return *this;} /** *The x509 principal identifier of the authenticating certificate.
*/ inline SubjectSummary& WithX509Subject(const char* value) { SetX509Subject(value); return *this;} private: Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; bool m_enabled; bool m_enabledHasBeenSet = false; Aws::Utils::DateTime m_lastSeenAt; bool m_lastSeenAtHasBeenSet = false; Aws::String m_subjectArn; bool m_subjectArnHasBeenSet = false; Aws::String m_subjectId; bool m_subjectIdHasBeenSet = false; Aws::Utils::DateTime m_updatedAt; bool m_updatedAtHasBeenSet = false; Aws::String m_x509Subject; bool m_x509SubjectHasBeenSet = false; }; } // namespace Model } // namespace RolesAnywhere } // namespace Aws