/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ACM { namespace Model { /** *

Contains metadata about an ACM certificate. This structure is returned in the * response to a DescribeCertificate request.

See Also:

AWS * API Reference

*/ class CertificateDetail { public: AWS_ACM_API CertificateDetail(); AWS_ACM_API CertificateDetail(Aws::Utils::Json::JsonView jsonValue); AWS_ACM_API CertificateDetail& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_ACM_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Resource Name (ARN) of the certificate. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline const Aws::String& GetCertificateArn() const{ return m_certificateArn; } /** *

The Amazon Resource Name (ARN) of the certificate. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline bool CertificateArnHasBeenSet() const { return m_certificateArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the certificate. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline void SetCertificateArn(const Aws::String& value) { m_certificateArnHasBeenSet = true; m_certificateArn = value; } /** *

The Amazon Resource Name (ARN) of the certificate. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline void SetCertificateArn(Aws::String&& value) { m_certificateArnHasBeenSet = true; m_certificateArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the certificate. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline void SetCertificateArn(const char* value) { m_certificateArnHasBeenSet = true; m_certificateArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the certificate. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline CertificateDetail& WithCertificateArn(const Aws::String& value) { SetCertificateArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the certificate. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline CertificateDetail& WithCertificateArn(Aws::String&& value) { SetCertificateArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the certificate. For more information about * ARNs, see Amazon * Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline CertificateDetail& WithCertificateArn(const char* value) { SetCertificateArn(value); return *this;} /** *

The fully qualified domain name for the certificate, such as www.example.com * or example.com.

*/ inline const Aws::String& GetDomainName() const{ return m_domainName; } /** *

The fully qualified domain name for the certificate, such as www.example.com * or example.com.

*/ inline bool DomainNameHasBeenSet() const { return m_domainNameHasBeenSet; } /** *

The fully qualified domain name for the certificate, such as www.example.com * or example.com.

*/ inline void SetDomainName(const Aws::String& value) { m_domainNameHasBeenSet = true; m_domainName = value; } /** *

The fully qualified domain name for the certificate, such as www.example.com * or example.com.

*/ inline void SetDomainName(Aws::String&& value) { m_domainNameHasBeenSet = true; m_domainName = std::move(value); } /** *

The fully qualified domain name for the certificate, such as www.example.com * or example.com.

*/ inline void SetDomainName(const char* value) { m_domainNameHasBeenSet = true; m_domainName.assign(value); } /** *

The fully qualified domain name for the certificate, such as www.example.com * or example.com.

*/ inline CertificateDetail& WithDomainName(const Aws::String& value) { SetDomainName(value); return *this;} /** *

The fully qualified domain name for the certificate, such as www.example.com * or example.com.

*/ inline CertificateDetail& WithDomainName(Aws::String&& value) { SetDomainName(std::move(value)); return *this;} /** *

The fully qualified domain name for the certificate, such as www.example.com * or example.com.

*/ inline CertificateDetail& WithDomainName(const char* value) { SetDomainName(value); return *this;} /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline const Aws::Vector& GetSubjectAlternativeNames() const{ return m_subjectAlternativeNames; } /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline bool SubjectAlternativeNamesHasBeenSet() const { return m_subjectAlternativeNamesHasBeenSet; } /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline void SetSubjectAlternativeNames(const Aws::Vector& value) { m_subjectAlternativeNamesHasBeenSet = true; m_subjectAlternativeNames = value; } /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline void SetSubjectAlternativeNames(Aws::Vector&& value) { m_subjectAlternativeNamesHasBeenSet = true; m_subjectAlternativeNames = std::move(value); } /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline CertificateDetail& WithSubjectAlternativeNames(const Aws::Vector& value) { SetSubjectAlternativeNames(value); return *this;} /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline CertificateDetail& WithSubjectAlternativeNames(Aws::Vector&& value) { SetSubjectAlternativeNames(std::move(value)); return *this;} /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline CertificateDetail& AddSubjectAlternativeNames(const Aws::String& value) { m_subjectAlternativeNamesHasBeenSet = true; m_subjectAlternativeNames.push_back(value); return *this; } /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline CertificateDetail& AddSubjectAlternativeNames(Aws::String&& value) { m_subjectAlternativeNamesHasBeenSet = true; m_subjectAlternativeNames.push_back(std::move(value)); return *this; } /** *

One or more domain names (subject alternative names) included in the * certificate. This list contains the domain names that are bound to the public * key that is contained in the certificate. The subject alternative names include * the canonical domain name (CN) of the certificate and additional domain names * that can be used to connect to the website.

*/ inline CertificateDetail& AddSubjectAlternativeNames(const char* value) { m_subjectAlternativeNamesHasBeenSet = true; m_subjectAlternativeNames.push_back(value); return *this; } /** *

Contains information about the initial validation of each domain name that * occurs as a result of the RequestCertificate request. This field exists * only when the certificate type is AMAZON_ISSUED.

*/ inline const Aws::Vector& GetDomainValidationOptions() const{ return m_domainValidationOptions; } /** *

Contains information about the initial validation of each domain name that * occurs as a result of the RequestCertificate request. This field exists * only when the certificate type is AMAZON_ISSUED.

*/ inline bool DomainValidationOptionsHasBeenSet() const { return m_domainValidationOptionsHasBeenSet; } /** *

Contains information about the initial validation of each domain name that * occurs as a result of the RequestCertificate request. This field exists * only when the certificate type is AMAZON_ISSUED.

*/ inline void SetDomainValidationOptions(const Aws::Vector& value) { m_domainValidationOptionsHasBeenSet = true; m_domainValidationOptions = value; } /** *

Contains information about the initial validation of each domain name that * occurs as a result of the RequestCertificate request. This field exists * only when the certificate type is AMAZON_ISSUED.

*/ inline void SetDomainValidationOptions(Aws::Vector&& value) { m_domainValidationOptionsHasBeenSet = true; m_domainValidationOptions = std::move(value); } /** *

Contains information about the initial validation of each domain name that * occurs as a result of the RequestCertificate request. This field exists * only when the certificate type is AMAZON_ISSUED.

*/ inline CertificateDetail& WithDomainValidationOptions(const Aws::Vector& value) { SetDomainValidationOptions(value); return *this;} /** *

Contains information about the initial validation of each domain name that * occurs as a result of the RequestCertificate request. This field exists * only when the certificate type is AMAZON_ISSUED.

*/ inline CertificateDetail& WithDomainValidationOptions(Aws::Vector&& value) { SetDomainValidationOptions(std::move(value)); return *this;} /** *

Contains information about the initial validation of each domain name that * occurs as a result of the RequestCertificate request. This field exists * only when the certificate type is AMAZON_ISSUED.

*/ inline CertificateDetail& AddDomainValidationOptions(const DomainValidation& value) { m_domainValidationOptionsHasBeenSet = true; m_domainValidationOptions.push_back(value); return *this; } /** *

Contains information about the initial validation of each domain name that * occurs as a result of the RequestCertificate request. This field exists * only when the certificate type is AMAZON_ISSUED.

*/ inline CertificateDetail& AddDomainValidationOptions(DomainValidation&& value) { m_domainValidationOptionsHasBeenSet = true; m_domainValidationOptions.push_back(std::move(value)); return *this; } /** *

The serial number of the certificate.

*/ inline const Aws::String& GetSerial() const{ return m_serial; } /** *

The serial number of the certificate.

*/ inline bool SerialHasBeenSet() const { return m_serialHasBeenSet; } /** *

The serial number of the certificate.

*/ inline void SetSerial(const Aws::String& value) { m_serialHasBeenSet = true; m_serial = value; } /** *

The serial number of the certificate.

*/ inline void SetSerial(Aws::String&& value) { m_serialHasBeenSet = true; m_serial = std::move(value); } /** *

The serial number of the certificate.

*/ inline void SetSerial(const char* value) { m_serialHasBeenSet = true; m_serial.assign(value); } /** *

The serial number of the certificate.

*/ inline CertificateDetail& WithSerial(const Aws::String& value) { SetSerial(value); return *this;} /** *

The serial number of the certificate.

*/ inline CertificateDetail& WithSerial(Aws::String&& value) { SetSerial(std::move(value)); return *this;} /** *

The serial number of the certificate.

*/ inline CertificateDetail& WithSerial(const char* value) { SetSerial(value); return *this;} /** *

The name of the entity that is associated with the public key contained in * the certificate.

*/ inline const Aws::String& GetSubject() const{ return m_subject; } /** *

The name of the entity that is associated with the public key contained in * the certificate.

*/ inline bool SubjectHasBeenSet() const { return m_subjectHasBeenSet; } /** *

The name of the entity that is associated with the public key contained in * the certificate.

*/ inline void SetSubject(const Aws::String& value) { m_subjectHasBeenSet = true; m_subject = value; } /** *

The name of the entity that is associated with the public key contained in * the certificate.

*/ inline void SetSubject(Aws::String&& value) { m_subjectHasBeenSet = true; m_subject = std::move(value); } /** *

The name of the entity that is associated with the public key contained in * the certificate.

*/ inline void SetSubject(const char* value) { m_subjectHasBeenSet = true; m_subject.assign(value); } /** *

The name of the entity that is associated with the public key contained in * the certificate.

*/ inline CertificateDetail& WithSubject(const Aws::String& value) { SetSubject(value); return *this;} /** *

The name of the entity that is associated with the public key contained in * the certificate.

*/ inline CertificateDetail& WithSubject(Aws::String&& value) { SetSubject(std::move(value)); return *this;} /** *

The name of the entity that is associated with the public key contained in * the certificate.

*/ inline CertificateDetail& WithSubject(const char* value) { SetSubject(value); return *this;} /** *

The name of the certificate authority that issued and signed the * certificate.

*/ inline const Aws::String& GetIssuer() const{ return m_issuer; } /** *

The name of the certificate authority that issued and signed the * certificate.

*/ inline bool IssuerHasBeenSet() const { return m_issuerHasBeenSet; } /** *

The name of the certificate authority that issued and signed the * certificate.

*/ inline void SetIssuer(const Aws::String& value) { m_issuerHasBeenSet = true; m_issuer = value; } /** *

The name of the certificate authority that issued and signed the * certificate.

*/ inline void SetIssuer(Aws::String&& value) { m_issuerHasBeenSet = true; m_issuer = std::move(value); } /** *

The name of the certificate authority that issued and signed the * certificate.

*/ inline void SetIssuer(const char* value) { m_issuerHasBeenSet = true; m_issuer.assign(value); } /** *

The name of the certificate authority that issued and signed the * certificate.

*/ inline CertificateDetail& WithIssuer(const Aws::String& value) { SetIssuer(value); return *this;} /** *

The name of the certificate authority that issued and signed the * certificate.

*/ inline CertificateDetail& WithIssuer(Aws::String&& value) { SetIssuer(std::move(value)); return *this;} /** *

The name of the certificate authority that issued and signed the * certificate.

*/ inline CertificateDetail& WithIssuer(const char* value) { SetIssuer(value); return *this;} /** *

The time at which the certificate was requested.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The time at which the certificate was requested.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The time at which the certificate was requested.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The time at which the certificate was requested.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

The time at which the certificate was requested.

*/ inline CertificateDetail& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The time at which the certificate was requested.

*/ inline CertificateDetail& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The time at which the certificate was issued. This value exists only when the * certificate type is AMAZON_ISSUED.

*/ inline const Aws::Utils::DateTime& GetIssuedAt() const{ return m_issuedAt; } /** *

The time at which the certificate was issued. This value exists only when the * certificate type is AMAZON_ISSUED.

*/ inline bool IssuedAtHasBeenSet() const { return m_issuedAtHasBeenSet; } /** *

The time at which the certificate was issued. This value exists only when the * certificate type is AMAZON_ISSUED.

*/ inline void SetIssuedAt(const Aws::Utils::DateTime& value) { m_issuedAtHasBeenSet = true; m_issuedAt = value; } /** *

The time at which the certificate was issued. This value exists only when the * certificate type is AMAZON_ISSUED.

*/ inline void SetIssuedAt(Aws::Utils::DateTime&& value) { m_issuedAtHasBeenSet = true; m_issuedAt = std::move(value); } /** *

The time at which the certificate was issued. This value exists only when the * certificate type is AMAZON_ISSUED.

*/ inline CertificateDetail& WithIssuedAt(const Aws::Utils::DateTime& value) { SetIssuedAt(value); return *this;} /** *

The time at which the certificate was issued. This value exists only when the * certificate type is AMAZON_ISSUED.

*/ inline CertificateDetail& WithIssuedAt(Aws::Utils::DateTime&& value) { SetIssuedAt(std::move(value)); return *this;} /** *

The date and time when the certificate was imported. This value exists only * when the certificate type is IMPORTED.

*/ inline const Aws::Utils::DateTime& GetImportedAt() const{ return m_importedAt; } /** *

The date and time when the certificate was imported. This value exists only * when the certificate type is IMPORTED.

*/ inline bool ImportedAtHasBeenSet() const { return m_importedAtHasBeenSet; } /** *

The date and time when the certificate was imported. This value exists only * when the certificate type is IMPORTED.

*/ inline void SetImportedAt(const Aws::Utils::DateTime& value) { m_importedAtHasBeenSet = true; m_importedAt = value; } /** *

The date and time when the certificate was imported. This value exists only * when the certificate type is IMPORTED.

*/ inline void SetImportedAt(Aws::Utils::DateTime&& value) { m_importedAtHasBeenSet = true; m_importedAt = std::move(value); } /** *

The date and time when the certificate was imported. This value exists only * when the certificate type is IMPORTED.

*/ inline CertificateDetail& WithImportedAt(const Aws::Utils::DateTime& value) { SetImportedAt(value); return *this;} /** *

The date and time when the certificate was imported. This value exists only * when the certificate type is IMPORTED.

*/ inline CertificateDetail& WithImportedAt(Aws::Utils::DateTime&& value) { SetImportedAt(std::move(value)); return *this;} /** *

The status of the certificate.

A certificate enters status * PENDING_VALIDATION upon being requested, unless it fails for any of the reasons * given in the troubleshooting topic Certificate * request fails. ACM makes repeated attempts to validate a certificate for 72 * hours and then times out. If a certificate shows status FAILED or * VALIDATION_TIMED_OUT, delete the request, correct the issue with DNS * validation or Email * validation, and try again. If validation succeeds, the certificate enters * status ISSUED.

*/ inline const CertificateStatus& GetStatus() const{ return m_status; } /** *

The status of the certificate.

A certificate enters status * PENDING_VALIDATION upon being requested, unless it fails for any of the reasons * given in the troubleshooting topic Certificate * request fails. ACM makes repeated attempts to validate a certificate for 72 * hours and then times out. If a certificate shows status FAILED or * VALIDATION_TIMED_OUT, delete the request, correct the issue with DNS * validation or Email * validation, and try again. If validation succeeds, the certificate enters * status ISSUED.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the certificate.

A certificate enters status * PENDING_VALIDATION upon being requested, unless it fails for any of the reasons * given in the troubleshooting topic Certificate * request fails. ACM makes repeated attempts to validate a certificate for 72 * hours and then times out. If a certificate shows status FAILED or * VALIDATION_TIMED_OUT, delete the request, correct the issue with DNS * validation or Email * validation, and try again. If validation succeeds, the certificate enters * status ISSUED.

*/ inline void SetStatus(const CertificateStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the certificate.

A certificate enters status * PENDING_VALIDATION upon being requested, unless it fails for any of the reasons * given in the troubleshooting topic Certificate * request fails. ACM makes repeated attempts to validate a certificate for 72 * hours and then times out. If a certificate shows status FAILED or * VALIDATION_TIMED_OUT, delete the request, correct the issue with DNS * validation or Email * validation, and try again. If validation succeeds, the certificate enters * status ISSUED.

*/ inline void SetStatus(CertificateStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of the certificate.

A certificate enters status * PENDING_VALIDATION upon being requested, unless it fails for any of the reasons * given in the troubleshooting topic Certificate * request fails. ACM makes repeated attempts to validate a certificate for 72 * hours and then times out. If a certificate shows status FAILED or * VALIDATION_TIMED_OUT, delete the request, correct the issue with DNS * validation or Email * validation, and try again. If validation succeeds, the certificate enters * status ISSUED.

*/ inline CertificateDetail& WithStatus(const CertificateStatus& value) { SetStatus(value); return *this;} /** *

The status of the certificate.

A certificate enters status * PENDING_VALIDATION upon being requested, unless it fails for any of the reasons * given in the troubleshooting topic Certificate * request fails. ACM makes repeated attempts to validate a certificate for 72 * hours and then times out. If a certificate shows status FAILED or * VALIDATION_TIMED_OUT, delete the request, correct the issue with DNS * validation or Email * validation, and try again. If validation succeeds, the certificate enters * status ISSUED.

*/ inline CertificateDetail& WithStatus(CertificateStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The time at which the certificate was revoked. This value exists only when * the certificate status is REVOKED.

*/ inline const Aws::Utils::DateTime& GetRevokedAt() const{ return m_revokedAt; } /** *

The time at which the certificate was revoked. This value exists only when * the certificate status is REVOKED.

*/ inline bool RevokedAtHasBeenSet() const { return m_revokedAtHasBeenSet; } /** *

The time at which the certificate was revoked. This value exists only when * the certificate status is REVOKED.

*/ inline void SetRevokedAt(const Aws::Utils::DateTime& value) { m_revokedAtHasBeenSet = true; m_revokedAt = value; } /** *

The time at which the certificate was revoked. This value exists only when * the certificate status is REVOKED.

*/ inline void SetRevokedAt(Aws::Utils::DateTime&& value) { m_revokedAtHasBeenSet = true; m_revokedAt = std::move(value); } /** *

The time at which the certificate was revoked. This value exists only when * the certificate status is REVOKED.

*/ inline CertificateDetail& WithRevokedAt(const Aws::Utils::DateTime& value) { SetRevokedAt(value); return *this;} /** *

The time at which the certificate was revoked. This value exists only when * the certificate status is REVOKED.

*/ inline CertificateDetail& WithRevokedAt(Aws::Utils::DateTime&& value) { SetRevokedAt(std::move(value)); return *this;} /** *

The reason the certificate was revoked. This value exists only when the * certificate status is REVOKED.

*/ inline const RevocationReason& GetRevocationReason() const{ return m_revocationReason; } /** *

The reason the certificate was revoked. This value exists only when the * certificate status is REVOKED.

*/ inline bool RevocationReasonHasBeenSet() const { return m_revocationReasonHasBeenSet; } /** *

The reason the certificate was revoked. This value exists only when the * certificate status is REVOKED.

*/ inline void SetRevocationReason(const RevocationReason& value) { m_revocationReasonHasBeenSet = true; m_revocationReason = value; } /** *

The reason the certificate was revoked. This value exists only when the * certificate status is REVOKED.

*/ inline void SetRevocationReason(RevocationReason&& value) { m_revocationReasonHasBeenSet = true; m_revocationReason = std::move(value); } /** *

The reason the certificate was revoked. This value exists only when the * certificate status is REVOKED.

*/ inline CertificateDetail& WithRevocationReason(const RevocationReason& value) { SetRevocationReason(value); return *this;} /** *

The reason the certificate was revoked. This value exists only when the * certificate status is REVOKED.

*/ inline CertificateDetail& WithRevocationReason(RevocationReason&& value) { SetRevocationReason(std::move(value)); return *this;} /** *

The time before which the certificate is not valid.

*/ inline const Aws::Utils::DateTime& GetNotBefore() const{ return m_notBefore; } /** *

The time before which the certificate is not valid.

*/ inline bool NotBeforeHasBeenSet() const { return m_notBeforeHasBeenSet; } /** *

The time before which the certificate is not valid.

*/ inline void SetNotBefore(const Aws::Utils::DateTime& value) { m_notBeforeHasBeenSet = true; m_notBefore = value; } /** *

The time before which the certificate is not valid.

*/ inline void SetNotBefore(Aws::Utils::DateTime&& value) { m_notBeforeHasBeenSet = true; m_notBefore = std::move(value); } /** *

The time before which the certificate is not valid.

*/ inline CertificateDetail& WithNotBefore(const Aws::Utils::DateTime& value) { SetNotBefore(value); return *this;} /** *

The time before which the certificate is not valid.

*/ inline CertificateDetail& WithNotBefore(Aws::Utils::DateTime&& value) { SetNotBefore(std::move(value)); return *this;} /** *

The time after which the certificate is not valid.

*/ inline const Aws::Utils::DateTime& GetNotAfter() const{ return m_notAfter; } /** *

The time after which the certificate is not valid.

*/ inline bool NotAfterHasBeenSet() const { return m_notAfterHasBeenSet; } /** *

The time after which the certificate is not valid.

*/ inline void SetNotAfter(const Aws::Utils::DateTime& value) { m_notAfterHasBeenSet = true; m_notAfter = value; } /** *

The time after which the certificate is not valid.

*/ inline void SetNotAfter(Aws::Utils::DateTime&& value) { m_notAfterHasBeenSet = true; m_notAfter = std::move(value); } /** *

The time after which the certificate is not valid.

*/ inline CertificateDetail& WithNotAfter(const Aws::Utils::DateTime& value) { SetNotAfter(value); return *this;} /** *

The time after which the certificate is not valid.

*/ inline CertificateDetail& WithNotAfter(Aws::Utils::DateTime&& value) { SetNotAfter(std::move(value)); return *this;} /** *

The algorithm that was used to generate the public-private key pair.

*/ inline const KeyAlgorithm& GetKeyAlgorithm() const{ return m_keyAlgorithm; } /** *

The algorithm that was used to generate the public-private key pair.

*/ inline bool KeyAlgorithmHasBeenSet() const { return m_keyAlgorithmHasBeenSet; } /** *

The algorithm that was used to generate the public-private key pair.

*/ inline void SetKeyAlgorithm(const KeyAlgorithm& value) { m_keyAlgorithmHasBeenSet = true; m_keyAlgorithm = value; } /** *

The algorithm that was used to generate the public-private key pair.

*/ inline void SetKeyAlgorithm(KeyAlgorithm&& value) { m_keyAlgorithmHasBeenSet = true; m_keyAlgorithm = std::move(value); } /** *

The algorithm that was used to generate the public-private key pair.

*/ inline CertificateDetail& WithKeyAlgorithm(const KeyAlgorithm& value) { SetKeyAlgorithm(value); return *this;} /** *

The algorithm that was used to generate the public-private key pair.

*/ inline CertificateDetail& WithKeyAlgorithm(KeyAlgorithm&& value) { SetKeyAlgorithm(std::move(value)); return *this;} /** *

The algorithm that was used to sign the certificate.

*/ inline const Aws::String& GetSignatureAlgorithm() const{ return m_signatureAlgorithm; } /** *

The algorithm that was used to sign the certificate.

*/ inline bool SignatureAlgorithmHasBeenSet() const { return m_signatureAlgorithmHasBeenSet; } /** *

The algorithm that was used to sign the certificate.

*/ inline void SetSignatureAlgorithm(const Aws::String& value) { m_signatureAlgorithmHasBeenSet = true; m_signatureAlgorithm = value; } /** *

The algorithm that was used to sign the certificate.

*/ inline void SetSignatureAlgorithm(Aws::String&& value) { m_signatureAlgorithmHasBeenSet = true; m_signatureAlgorithm = std::move(value); } /** *

The algorithm that was used to sign the certificate.

*/ inline void SetSignatureAlgorithm(const char* value) { m_signatureAlgorithmHasBeenSet = true; m_signatureAlgorithm.assign(value); } /** *

The algorithm that was used to sign the certificate.

*/ inline CertificateDetail& WithSignatureAlgorithm(const Aws::String& value) { SetSignatureAlgorithm(value); return *this;} /** *

The algorithm that was used to sign the certificate.

*/ inline CertificateDetail& WithSignatureAlgorithm(Aws::String&& value) { SetSignatureAlgorithm(std::move(value)); return *this;} /** *

The algorithm that was used to sign the certificate.

*/ inline CertificateDetail& WithSignatureAlgorithm(const char* value) { SetSignatureAlgorithm(value); return *this;} /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline const Aws::Vector& GetInUseBy() const{ return m_inUseBy; } /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline bool InUseByHasBeenSet() const { return m_inUseByHasBeenSet; } /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline void SetInUseBy(const Aws::Vector& value) { m_inUseByHasBeenSet = true; m_inUseBy = value; } /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline void SetInUseBy(Aws::Vector&& value) { m_inUseByHasBeenSet = true; m_inUseBy = std::move(value); } /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline CertificateDetail& WithInUseBy(const Aws::Vector& value) { SetInUseBy(value); return *this;} /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline CertificateDetail& WithInUseBy(Aws::Vector&& value) { SetInUseBy(std::move(value)); return *this;} /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline CertificateDetail& AddInUseBy(const Aws::String& value) { m_inUseByHasBeenSet = true; m_inUseBy.push_back(value); return *this; } /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline CertificateDetail& AddInUseBy(Aws::String&& value) { m_inUseByHasBeenSet = true; m_inUseBy.push_back(std::move(value)); return *this; } /** *

A list of ARNs for the Amazon Web Services resources that are using the * certificate. A certificate can be used by multiple Amazon Web Services * resources.

*/ inline CertificateDetail& AddInUseBy(const char* value) { m_inUseByHasBeenSet = true; m_inUseBy.push_back(value); return *this; } /** *

The reason the certificate request failed. This value exists only when the * certificate status is FAILED. For more information, see Certificate * Request Failed in the Certificate Manager User Guide.

*/ inline const FailureReason& GetFailureReason() const{ return m_failureReason; } /** *

The reason the certificate request failed. This value exists only when the * certificate status is FAILED. For more information, see Certificate * Request Failed in the Certificate Manager User Guide.

*/ inline bool FailureReasonHasBeenSet() const { return m_failureReasonHasBeenSet; } /** *

The reason the certificate request failed. This value exists only when the * certificate status is FAILED. For more information, see Certificate * Request Failed in the Certificate Manager User Guide.

*/ inline void SetFailureReason(const FailureReason& value) { m_failureReasonHasBeenSet = true; m_failureReason = value; } /** *

The reason the certificate request failed. This value exists only when the * certificate status is FAILED. For more information, see Certificate * Request Failed in the Certificate Manager User Guide.

*/ inline void SetFailureReason(FailureReason&& value) { m_failureReasonHasBeenSet = true; m_failureReason = std::move(value); } /** *

The reason the certificate request failed. This value exists only when the * certificate status is FAILED. For more information, see Certificate * Request Failed in the Certificate Manager User Guide.

*/ inline CertificateDetail& WithFailureReason(const FailureReason& value) { SetFailureReason(value); return *this;} /** *

The reason the certificate request failed. This value exists only when the * certificate status is FAILED. For more information, see Certificate * Request Failed in the Certificate Manager User Guide.

*/ inline CertificateDetail& WithFailureReason(FailureReason&& value) { SetFailureReason(std::move(value)); return *this;} /** *

The source of the certificate. For certificates provided by ACM, this value * is AMAZON_ISSUED. For certificates that you imported with * ImportCertificate, this value is IMPORTED. ACM does not * provide managed * renewal for imported certificates. For more information about the * differences between certificates that you import and those that ACM provides, * see Importing * Certificates in the Certificate Manager User Guide.

*/ inline const CertificateType& GetType() const{ return m_type; } /** *

The source of the certificate. For certificates provided by ACM, this value * is AMAZON_ISSUED. For certificates that you imported with * ImportCertificate, this value is IMPORTED. ACM does not * provide managed * renewal for imported certificates. For more information about the * differences between certificates that you import and those that ACM provides, * see Importing * Certificates in the Certificate Manager User Guide.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The source of the certificate. For certificates provided by ACM, this value * is AMAZON_ISSUED. For certificates that you imported with * ImportCertificate, this value is IMPORTED. ACM does not * provide managed * renewal for imported certificates. For more information about the * differences between certificates that you import and those that ACM provides, * see Importing * Certificates in the Certificate Manager User Guide.

*/ inline void SetType(const CertificateType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The source of the certificate. For certificates provided by ACM, this value * is AMAZON_ISSUED. For certificates that you imported with * ImportCertificate, this value is IMPORTED. ACM does not * provide managed * renewal for imported certificates. For more information about the * differences between certificates that you import and those that ACM provides, * see Importing * Certificates in the Certificate Manager User Guide.

*/ inline void SetType(CertificateType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The source of the certificate. For certificates provided by ACM, this value * is AMAZON_ISSUED. For certificates that you imported with * ImportCertificate, this value is IMPORTED. ACM does not * provide managed * renewal for imported certificates. For more information about the * differences between certificates that you import and those that ACM provides, * see Importing * Certificates in the Certificate Manager User Guide.

*/ inline CertificateDetail& WithType(const CertificateType& value) { SetType(value); return *this;} /** *

The source of the certificate. For certificates provided by ACM, this value * is AMAZON_ISSUED. For certificates that you imported with * ImportCertificate, this value is IMPORTED. ACM does not * provide managed * renewal for imported certificates. For more information about the * differences between certificates that you import and those that ACM provides, * see Importing * Certificates in the Certificate Manager User Guide.

*/ inline CertificateDetail& WithType(CertificateType&& value) { SetType(std::move(value)); return *this;} /** *

Contains information about the status of ACM's managed * renewal for the certificate. This field exists only when the certificate * type is AMAZON_ISSUED.

*/ inline const RenewalSummary& GetRenewalSummary() const{ return m_renewalSummary; } /** *

Contains information about the status of ACM's managed * renewal for the certificate. This field exists only when the certificate * type is AMAZON_ISSUED.

*/ inline bool RenewalSummaryHasBeenSet() const { return m_renewalSummaryHasBeenSet; } /** *

Contains information about the status of ACM's managed * renewal for the certificate. This field exists only when the certificate * type is AMAZON_ISSUED.

*/ inline void SetRenewalSummary(const RenewalSummary& value) { m_renewalSummaryHasBeenSet = true; m_renewalSummary = value; } /** *

Contains information about the status of ACM's managed * renewal for the certificate. This field exists only when the certificate * type is AMAZON_ISSUED.

*/ inline void SetRenewalSummary(RenewalSummary&& value) { m_renewalSummaryHasBeenSet = true; m_renewalSummary = std::move(value); } /** *

Contains information about the status of ACM's managed * renewal for the certificate. This field exists only when the certificate * type is AMAZON_ISSUED.

*/ inline CertificateDetail& WithRenewalSummary(const RenewalSummary& value) { SetRenewalSummary(value); return *this;} /** *

Contains information about the status of ACM's managed * renewal for the certificate. This field exists only when the certificate * type is AMAZON_ISSUED.

*/ inline CertificateDetail& WithRenewalSummary(RenewalSummary&& value) { SetRenewalSummary(std::move(value)); return *this;} /** *

A list of Key Usage X.509 v3 extension objects. Each object is a string value * that identifies the purpose of the public key contained in the certificate. * Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, * NON_REPUDIATION, and more.

*/ inline const Aws::Vector& GetKeyUsages() const{ return m_keyUsages; } /** *

A list of Key Usage X.509 v3 extension objects. Each object is a string value * that identifies the purpose of the public key contained in the certificate. * Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, * NON_REPUDIATION, and more.

*/ inline bool KeyUsagesHasBeenSet() const { return m_keyUsagesHasBeenSet; } /** *

A list of Key Usage X.509 v3 extension objects. Each object is a string value * that identifies the purpose of the public key contained in the certificate. * Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, * NON_REPUDIATION, and more.

*/ inline void SetKeyUsages(const Aws::Vector& value) { m_keyUsagesHasBeenSet = true; m_keyUsages = value; } /** *

A list of Key Usage X.509 v3 extension objects. Each object is a string value * that identifies the purpose of the public key contained in the certificate. * Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, * NON_REPUDIATION, and more.

*/ inline void SetKeyUsages(Aws::Vector&& value) { m_keyUsagesHasBeenSet = true; m_keyUsages = std::move(value); } /** *

A list of Key Usage X.509 v3 extension objects. Each object is a string value * that identifies the purpose of the public key contained in the certificate. * Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, * NON_REPUDIATION, and more.

*/ inline CertificateDetail& WithKeyUsages(const Aws::Vector& value) { SetKeyUsages(value); return *this;} /** *

A list of Key Usage X.509 v3 extension objects. Each object is a string value * that identifies the purpose of the public key contained in the certificate. * Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, * NON_REPUDIATION, and more.

*/ inline CertificateDetail& WithKeyUsages(Aws::Vector&& value) { SetKeyUsages(std::move(value)); return *this;} /** *

A list of Key Usage X.509 v3 extension objects. Each object is a string value * that identifies the purpose of the public key contained in the certificate. * Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, * NON_REPUDIATION, and more.

*/ inline CertificateDetail& AddKeyUsages(const KeyUsage& value) { m_keyUsagesHasBeenSet = true; m_keyUsages.push_back(value); return *this; } /** *

A list of Key Usage X.509 v3 extension objects. Each object is a string value * that identifies the purpose of the public key contained in the certificate. * Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, * NON_REPUDIATION, and more.

*/ inline CertificateDetail& AddKeyUsages(KeyUsage&& value) { m_keyUsagesHasBeenSet = true; m_keyUsages.push_back(std::move(value)); return *this; } /** *

Contains a list of Extended Key Usage X.509 v3 extension objects. Each object * specifies a purpose for which the certificate public key can be used and * consists of a name and an object identifier (OID).

*/ inline const Aws::Vector& GetExtendedKeyUsages() const{ return m_extendedKeyUsages; } /** *

Contains a list of Extended Key Usage X.509 v3 extension objects. Each object * specifies a purpose for which the certificate public key can be used and * consists of a name and an object identifier (OID).

*/ inline bool ExtendedKeyUsagesHasBeenSet() const { return m_extendedKeyUsagesHasBeenSet; } /** *

Contains a list of Extended Key Usage X.509 v3 extension objects. Each object * specifies a purpose for which the certificate public key can be used and * consists of a name and an object identifier (OID).

*/ inline void SetExtendedKeyUsages(const Aws::Vector& value) { m_extendedKeyUsagesHasBeenSet = true; m_extendedKeyUsages = value; } /** *

Contains a list of Extended Key Usage X.509 v3 extension objects. Each object * specifies a purpose for which the certificate public key can be used and * consists of a name and an object identifier (OID).

*/ inline void SetExtendedKeyUsages(Aws::Vector&& value) { m_extendedKeyUsagesHasBeenSet = true; m_extendedKeyUsages = std::move(value); } /** *

Contains a list of Extended Key Usage X.509 v3 extension objects. Each object * specifies a purpose for which the certificate public key can be used and * consists of a name and an object identifier (OID).

*/ inline CertificateDetail& WithExtendedKeyUsages(const Aws::Vector& value) { SetExtendedKeyUsages(value); return *this;} /** *

Contains a list of Extended Key Usage X.509 v3 extension objects. Each object * specifies a purpose for which the certificate public key can be used and * consists of a name and an object identifier (OID).

*/ inline CertificateDetail& WithExtendedKeyUsages(Aws::Vector&& value) { SetExtendedKeyUsages(std::move(value)); return *this;} /** *

Contains a list of Extended Key Usage X.509 v3 extension objects. Each object * specifies a purpose for which the certificate public key can be used and * consists of a name and an object identifier (OID).

*/ inline CertificateDetail& AddExtendedKeyUsages(const ExtendedKeyUsage& value) { m_extendedKeyUsagesHasBeenSet = true; m_extendedKeyUsages.push_back(value); return *this; } /** *

Contains a list of Extended Key Usage X.509 v3 extension objects. Each object * specifies a purpose for which the certificate public key can be used and * consists of a name and an object identifier (OID).

*/ inline CertificateDetail& AddExtendedKeyUsages(ExtendedKeyUsage&& value) { m_extendedKeyUsagesHasBeenSet = true; m_extendedKeyUsages.push_back(std::move(value)); return *this; } /** *

The Amazon Resource Name (ARN) of the private certificate authority (CA) that * issued the certificate. This has the following format:

* arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 *

*/ inline const Aws::String& GetCertificateAuthorityArn() const{ return m_certificateAuthorityArn; } /** *

The Amazon Resource Name (ARN) of the private certificate authority (CA) that * issued the certificate. This has the following format:

* arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 *

*/ inline bool CertificateAuthorityArnHasBeenSet() const { return m_certificateAuthorityArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the private certificate authority (CA) that * issued the certificate. This has the following format:

* arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 *

*/ inline void SetCertificateAuthorityArn(const Aws::String& value) { m_certificateAuthorityArnHasBeenSet = true; m_certificateAuthorityArn = value; } /** *

The Amazon Resource Name (ARN) of the private certificate authority (CA) that * issued the certificate. This has the following format:

* arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 *

*/ inline void SetCertificateAuthorityArn(Aws::String&& value) { m_certificateAuthorityArnHasBeenSet = true; m_certificateAuthorityArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the private certificate authority (CA) that * issued the certificate. This has the following format:

* arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 *

*/ inline void SetCertificateAuthorityArn(const char* value) { m_certificateAuthorityArnHasBeenSet = true; m_certificateAuthorityArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the private certificate authority (CA) that * issued the certificate. This has the following format:

* arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 *

*/ inline CertificateDetail& WithCertificateAuthorityArn(const Aws::String& value) { SetCertificateAuthorityArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the private certificate authority (CA) that * issued the certificate. This has the following format:

* arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 *

*/ inline CertificateDetail& WithCertificateAuthorityArn(Aws::String&& value) { SetCertificateAuthorityArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the private certificate authority (CA) that * issued the certificate. This has the following format:

* arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 *

*/ inline CertificateDetail& WithCertificateAuthorityArn(const char* value) { SetCertificateAuthorityArn(value); return *this;} /** *

Specifies whether the certificate is eligible for renewal. At this time, only * exported private certificates can be renewed with the RenewCertificate * command.

*/ inline const RenewalEligibility& GetRenewalEligibility() const{ return m_renewalEligibility; } /** *

Specifies whether the certificate is eligible for renewal. At this time, only * exported private certificates can be renewed with the RenewCertificate * command.

*/ inline bool RenewalEligibilityHasBeenSet() const { return m_renewalEligibilityHasBeenSet; } /** *

Specifies whether the certificate is eligible for renewal. At this time, only * exported private certificates can be renewed with the RenewCertificate * command.

*/ inline void SetRenewalEligibility(const RenewalEligibility& value) { m_renewalEligibilityHasBeenSet = true; m_renewalEligibility = value; } /** *

Specifies whether the certificate is eligible for renewal. At this time, only * exported private certificates can be renewed with the RenewCertificate * command.

*/ inline void SetRenewalEligibility(RenewalEligibility&& value) { m_renewalEligibilityHasBeenSet = true; m_renewalEligibility = std::move(value); } /** *

Specifies whether the certificate is eligible for renewal. At this time, only * exported private certificates can be renewed with the RenewCertificate * command.

*/ inline CertificateDetail& WithRenewalEligibility(const RenewalEligibility& value) { SetRenewalEligibility(value); return *this;} /** *

Specifies whether the certificate is eligible for renewal. At this time, only * exported private certificates can be renewed with the RenewCertificate * command.

*/ inline CertificateDetail& WithRenewalEligibility(RenewalEligibility&& value) { SetRenewalEligibility(std::move(value)); return *this;} /** *

Value that specifies whether to add the certificate to a transparency log. * Certificate transparency makes it possible to detect SSL certificates that have * been mistakenly or maliciously issued. A browser might respond to certificate * that has not been logged by showing an error message. The logs are * cryptographically secure.

*/ inline const CertificateOptions& GetOptions() const{ return m_options; } /** *

Value that specifies whether to add the certificate to a transparency log. * Certificate transparency makes it possible to detect SSL certificates that have * been mistakenly or maliciously issued. A browser might respond to certificate * that has not been logged by showing an error message. The logs are * cryptographically secure.

*/ inline bool OptionsHasBeenSet() const { return m_optionsHasBeenSet; } /** *

Value that specifies whether to add the certificate to a transparency log. * Certificate transparency makes it possible to detect SSL certificates that have * been mistakenly or maliciously issued. A browser might respond to certificate * that has not been logged by showing an error message. The logs are * cryptographically secure.

*/ inline void SetOptions(const CertificateOptions& value) { m_optionsHasBeenSet = true; m_options = value; } /** *

Value that specifies whether to add the certificate to a transparency log. * Certificate transparency makes it possible to detect SSL certificates that have * been mistakenly or maliciously issued. A browser might respond to certificate * that has not been logged by showing an error message. The logs are * cryptographically secure.

*/ inline void SetOptions(CertificateOptions&& value) { m_optionsHasBeenSet = true; m_options = std::move(value); } /** *

Value that specifies whether to add the certificate to a transparency log. * Certificate transparency makes it possible to detect SSL certificates that have * been mistakenly or maliciously issued. A browser might respond to certificate * that has not been logged by showing an error message. The logs are * cryptographically secure.

*/ inline CertificateDetail& WithOptions(const CertificateOptions& value) { SetOptions(value); return *this;} /** *

Value that specifies whether to add the certificate to a transparency log. * Certificate transparency makes it possible to detect SSL certificates that have * been mistakenly or maliciously issued. A browser might respond to certificate * that has not been logged by showing an error message. The logs are * cryptographically secure.

*/ inline CertificateDetail& WithOptions(CertificateOptions&& value) { SetOptions(std::move(value)); return *this;} private: Aws::String m_certificateArn; bool m_certificateArnHasBeenSet = false; Aws::String m_domainName; bool m_domainNameHasBeenSet = false; Aws::Vector m_subjectAlternativeNames; bool m_subjectAlternativeNamesHasBeenSet = false; Aws::Vector m_domainValidationOptions; bool m_domainValidationOptionsHasBeenSet = false; Aws::String m_serial; bool m_serialHasBeenSet = false; Aws::String m_subject; bool m_subjectHasBeenSet = false; Aws::String m_issuer; bool m_issuerHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; Aws::Utils::DateTime m_issuedAt; bool m_issuedAtHasBeenSet = false; Aws::Utils::DateTime m_importedAt; bool m_importedAtHasBeenSet = false; CertificateStatus m_status; bool m_statusHasBeenSet = false; Aws::Utils::DateTime m_revokedAt; bool m_revokedAtHasBeenSet = false; RevocationReason m_revocationReason; bool m_revocationReasonHasBeenSet = false; Aws::Utils::DateTime m_notBefore; bool m_notBeforeHasBeenSet = false; Aws::Utils::DateTime m_notAfter; bool m_notAfterHasBeenSet = false; KeyAlgorithm m_keyAlgorithm; bool m_keyAlgorithmHasBeenSet = false; Aws::String m_signatureAlgorithm; bool m_signatureAlgorithmHasBeenSet = false; Aws::Vector m_inUseBy; bool m_inUseByHasBeenSet = false; FailureReason m_failureReason; bool m_failureReasonHasBeenSet = false; CertificateType m_type; bool m_typeHasBeenSet = false; RenewalSummary m_renewalSummary; bool m_renewalSummaryHasBeenSet = false; Aws::Vector m_keyUsages; bool m_keyUsagesHasBeenSet = false; Aws::Vector m_extendedKeyUsages; bool m_extendedKeyUsagesHasBeenSet = false; Aws::String m_certificateAuthorityArn; bool m_certificateAuthorityArnHasBeenSet = false; RenewalEligibility m_renewalEligibility; bool m_renewalEligibilityHasBeenSet = false; CertificateOptions m_options; bool m_optionsHasBeenSet = false; }; } // namespace Model } // namespace ACM } // namespace Aws