/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes a certificate.See Also:
AWS
* API Reference
The ARN of the certificate.
*/ inline const Aws::String& GetCertificateArn() const{ return m_certificateArn; } /** *The ARN of the certificate.
*/ inline bool CertificateArnHasBeenSet() const { return m_certificateArnHasBeenSet; } /** *The ARN of the certificate.
*/ inline void SetCertificateArn(const Aws::String& value) { m_certificateArnHasBeenSet = true; m_certificateArn = value; } /** *The ARN of the certificate.
*/ inline void SetCertificateArn(Aws::String&& value) { m_certificateArnHasBeenSet = true; m_certificateArn = std::move(value); } /** *The ARN of the certificate.
*/ inline void SetCertificateArn(const char* value) { m_certificateArnHasBeenSet = true; m_certificateArn.assign(value); } /** *The ARN of the certificate.
*/ inline CertificateDescription& WithCertificateArn(const Aws::String& value) { SetCertificateArn(value); return *this;} /** *The ARN of the certificate.
*/ inline CertificateDescription& WithCertificateArn(Aws::String&& value) { SetCertificateArn(std::move(value)); return *this;} /** *The ARN of the certificate.
*/ inline CertificateDescription& WithCertificateArn(const char* value) { SetCertificateArn(value); return *this;} /** *The ID of the certificate.
*/ inline const Aws::String& GetCertificateId() const{ return m_certificateId; } /** *The ID of the certificate.
*/ inline bool CertificateIdHasBeenSet() const { return m_certificateIdHasBeenSet; } /** *The ID of the certificate.
*/ inline void SetCertificateId(const Aws::String& value) { m_certificateIdHasBeenSet = true; m_certificateId = value; } /** *The ID of the certificate.
*/ inline void SetCertificateId(Aws::String&& value) { m_certificateIdHasBeenSet = true; m_certificateId = std::move(value); } /** *The ID of the certificate.
*/ inline void SetCertificateId(const char* value) { m_certificateIdHasBeenSet = true; m_certificateId.assign(value); } /** *The ID of the certificate.
*/ inline CertificateDescription& WithCertificateId(const Aws::String& value) { SetCertificateId(value); return *this;} /** *The ID of the certificate.
*/ inline CertificateDescription& WithCertificateId(Aws::String&& value) { SetCertificateId(std::move(value)); return *this;} /** *The ID of the certificate.
*/ inline CertificateDescription& WithCertificateId(const char* value) { SetCertificateId(value); return *this;} /** *The certificate ID of the CA certificate used to sign this certificate.
*/ inline const Aws::String& GetCaCertificateId() const{ return m_caCertificateId; } /** *The certificate ID of the CA certificate used to sign this certificate.
*/ inline bool CaCertificateIdHasBeenSet() const { return m_caCertificateIdHasBeenSet; } /** *The certificate ID of the CA certificate used to sign this certificate.
*/ inline void SetCaCertificateId(const Aws::String& value) { m_caCertificateIdHasBeenSet = true; m_caCertificateId = value; } /** *The certificate ID of the CA certificate used to sign this certificate.
*/ inline void SetCaCertificateId(Aws::String&& value) { m_caCertificateIdHasBeenSet = true; m_caCertificateId = std::move(value); } /** *The certificate ID of the CA certificate used to sign this certificate.
*/ inline void SetCaCertificateId(const char* value) { m_caCertificateIdHasBeenSet = true; m_caCertificateId.assign(value); } /** *The certificate ID of the CA certificate used to sign this certificate.
*/ inline CertificateDescription& WithCaCertificateId(const Aws::String& value) { SetCaCertificateId(value); return *this;} /** *The certificate ID of the CA certificate used to sign this certificate.
*/ inline CertificateDescription& WithCaCertificateId(Aws::String&& value) { SetCaCertificateId(std::move(value)); return *this;} /** *The certificate ID of the CA certificate used to sign this certificate.
*/ inline CertificateDescription& WithCaCertificateId(const char* value) { SetCaCertificateId(value); return *this;} /** *The status of the certificate.
*/ inline const CertificateStatus& GetStatus() const{ return m_status; } /** *The status of the certificate.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The status of the certificate.
*/ inline void SetStatus(const CertificateStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The status of the certificate.
*/ inline void SetStatus(CertificateStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The status of the certificate.
*/ inline CertificateDescription& WithStatus(const CertificateStatus& value) { SetStatus(value); return *this;} /** *The status of the certificate.
*/ inline CertificateDescription& WithStatus(CertificateStatus&& value) { SetStatus(std::move(value)); return *this;} /** *The certificate data, in PEM format.
*/ inline const Aws::String& GetCertificatePem() const{ return m_certificatePem; } /** *The certificate data, in PEM format.
*/ inline bool CertificatePemHasBeenSet() const { return m_certificatePemHasBeenSet; } /** *The certificate data, in PEM format.
*/ inline void SetCertificatePem(const Aws::String& value) { m_certificatePemHasBeenSet = true; m_certificatePem = value; } /** *The certificate data, in PEM format.
*/ inline void SetCertificatePem(Aws::String&& value) { m_certificatePemHasBeenSet = true; m_certificatePem = std::move(value); } /** *The certificate data, in PEM format.
*/ inline void SetCertificatePem(const char* value) { m_certificatePemHasBeenSet = true; m_certificatePem.assign(value); } /** *The certificate data, in PEM format.
*/ inline CertificateDescription& WithCertificatePem(const Aws::String& value) { SetCertificatePem(value); return *this;} /** *The certificate data, in PEM format.
*/ inline CertificateDescription& WithCertificatePem(Aws::String&& value) { SetCertificatePem(std::move(value)); return *this;} /** *The certificate data, in PEM format.
*/ inline CertificateDescription& WithCertificatePem(const char* value) { SetCertificatePem(value); return *this;} /** *The ID of the Amazon Web Services account that owns the certificate.
*/ inline const Aws::String& GetOwnedBy() const{ return m_ownedBy; } /** *The ID of the Amazon Web Services account that owns the certificate.
*/ inline bool OwnedByHasBeenSet() const { return m_ownedByHasBeenSet; } /** *The ID of the Amazon Web Services account that owns the certificate.
*/ inline void SetOwnedBy(const Aws::String& value) { m_ownedByHasBeenSet = true; m_ownedBy = value; } /** *The ID of the Amazon Web Services account that owns the certificate.
*/ inline void SetOwnedBy(Aws::String&& value) { m_ownedByHasBeenSet = true; m_ownedBy = std::move(value); } /** *The ID of the Amazon Web Services account that owns the certificate.
*/ inline void SetOwnedBy(const char* value) { m_ownedByHasBeenSet = true; m_ownedBy.assign(value); } /** *The ID of the Amazon Web Services account that owns the certificate.
*/ inline CertificateDescription& WithOwnedBy(const Aws::String& value) { SetOwnedBy(value); return *this;} /** *The ID of the Amazon Web Services account that owns the certificate.
*/ inline CertificateDescription& WithOwnedBy(Aws::String&& value) { SetOwnedBy(std::move(value)); return *this;} /** *The ID of the Amazon Web Services account that owns the certificate.
*/ inline CertificateDescription& WithOwnedBy(const char* value) { SetOwnedBy(value); return *this;} /** *The ID of the Amazon Web Services account of the previous owner of the * certificate.
*/ inline const Aws::String& GetPreviousOwnedBy() const{ return m_previousOwnedBy; } /** *The ID of the Amazon Web Services account of the previous owner of the * certificate.
*/ inline bool PreviousOwnedByHasBeenSet() const { return m_previousOwnedByHasBeenSet; } /** *The ID of the Amazon Web Services account of the previous owner of the * certificate.
*/ inline void SetPreviousOwnedBy(const Aws::String& value) { m_previousOwnedByHasBeenSet = true; m_previousOwnedBy = value; } /** *The ID of the Amazon Web Services account of the previous owner of the * certificate.
*/ inline void SetPreviousOwnedBy(Aws::String&& value) { m_previousOwnedByHasBeenSet = true; m_previousOwnedBy = std::move(value); } /** *The ID of the Amazon Web Services account of the previous owner of the * certificate.
*/ inline void SetPreviousOwnedBy(const char* value) { m_previousOwnedByHasBeenSet = true; m_previousOwnedBy.assign(value); } /** *The ID of the Amazon Web Services account of the previous owner of the * certificate.
*/ inline CertificateDescription& WithPreviousOwnedBy(const Aws::String& value) { SetPreviousOwnedBy(value); return *this;} /** *The ID of the Amazon Web Services account of the previous owner of the * certificate.
*/ inline CertificateDescription& WithPreviousOwnedBy(Aws::String&& value) { SetPreviousOwnedBy(std::move(value)); return *this;} /** *The ID of the Amazon Web Services account of the previous owner of the * certificate.
*/ inline CertificateDescription& WithPreviousOwnedBy(const char* value) { SetPreviousOwnedBy(value); return *this;} /** *The date and time the certificate was created.
*/ inline const Aws::Utils::DateTime& GetCreationDate() const{ return m_creationDate; } /** *The date and time the certificate was created.
*/ inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } /** *The date and time the certificate was created.
*/ inline void SetCreationDate(const Aws::Utils::DateTime& value) { m_creationDateHasBeenSet = true; m_creationDate = value; } /** *The date and time the certificate was created.
*/ inline void SetCreationDate(Aws::Utils::DateTime&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); } /** *The date and time the certificate was created.
*/ inline CertificateDescription& WithCreationDate(const Aws::Utils::DateTime& value) { SetCreationDate(value); return *this;} /** *The date and time the certificate was created.
*/ inline CertificateDescription& WithCreationDate(Aws::Utils::DateTime&& value) { SetCreationDate(std::move(value)); return *this;} /** *The date and time the certificate was last modified.
*/ inline const Aws::Utils::DateTime& GetLastModifiedDate() const{ return m_lastModifiedDate; } /** *The date and time the certificate was last modified.
*/ inline bool LastModifiedDateHasBeenSet() const { return m_lastModifiedDateHasBeenSet; } /** *The date and time the certificate was last modified.
*/ inline void SetLastModifiedDate(const Aws::Utils::DateTime& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = value; } /** *The date and time the certificate was last modified.
*/ inline void SetLastModifiedDate(Aws::Utils::DateTime&& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = std::move(value); } /** *The date and time the certificate was last modified.
*/ inline CertificateDescription& WithLastModifiedDate(const Aws::Utils::DateTime& value) { SetLastModifiedDate(value); return *this;} /** *The date and time the certificate was last modified.
*/ inline CertificateDescription& WithLastModifiedDate(Aws::Utils::DateTime&& value) { SetLastModifiedDate(std::move(value)); return *this;} /** *The customer version of the certificate.
*/ inline int GetCustomerVersion() const{ return m_customerVersion; } /** *The customer version of the certificate.
*/ inline bool CustomerVersionHasBeenSet() const { return m_customerVersionHasBeenSet; } /** *The customer version of the certificate.
*/ inline void SetCustomerVersion(int value) { m_customerVersionHasBeenSet = true; m_customerVersion = value; } /** *The customer version of the certificate.
*/ inline CertificateDescription& WithCustomerVersion(int value) { SetCustomerVersion(value); return *this;} /** *The transfer data.
*/ inline const TransferData& GetTransferData() const{ return m_transferData; } /** *The transfer data.
*/ inline bool TransferDataHasBeenSet() const { return m_transferDataHasBeenSet; } /** *The transfer data.
*/ inline void SetTransferData(const TransferData& value) { m_transferDataHasBeenSet = true; m_transferData = value; } /** *The transfer data.
*/ inline void SetTransferData(TransferData&& value) { m_transferDataHasBeenSet = true; m_transferData = std::move(value); } /** *The transfer data.
*/ inline CertificateDescription& WithTransferData(const TransferData& value) { SetTransferData(value); return *this;} /** *The transfer data.
*/ inline CertificateDescription& WithTransferData(TransferData&& value) { SetTransferData(std::move(value)); return *this;} /** *The generation ID of the certificate.
*/ inline const Aws::String& GetGenerationId() const{ return m_generationId; } /** *The generation ID of the certificate.
*/ inline bool GenerationIdHasBeenSet() const { return m_generationIdHasBeenSet; } /** *The generation ID of the certificate.
*/ inline void SetGenerationId(const Aws::String& value) { m_generationIdHasBeenSet = true; m_generationId = value; } /** *The generation ID of the certificate.
*/ inline void SetGenerationId(Aws::String&& value) { m_generationIdHasBeenSet = true; m_generationId = std::move(value); } /** *The generation ID of the certificate.
*/ inline void SetGenerationId(const char* value) { m_generationIdHasBeenSet = true; m_generationId.assign(value); } /** *The generation ID of the certificate.
*/ inline CertificateDescription& WithGenerationId(const Aws::String& value) { SetGenerationId(value); return *this;} /** *The generation ID of the certificate.
*/ inline CertificateDescription& WithGenerationId(Aws::String&& value) { SetGenerationId(std::move(value)); return *this;} /** *The generation ID of the certificate.
*/ inline CertificateDescription& WithGenerationId(const char* value) { SetGenerationId(value); return *this;} /** *When the certificate is valid.
*/ inline const CertificateValidity& GetValidity() const{ return m_validity; } /** *When the certificate is valid.
*/ inline bool ValidityHasBeenSet() const { return m_validityHasBeenSet; } /** *When the certificate is valid.
*/ inline void SetValidity(const CertificateValidity& value) { m_validityHasBeenSet = true; m_validity = value; } /** *When the certificate is valid.
*/ inline void SetValidity(CertificateValidity&& value) { m_validityHasBeenSet = true; m_validity = std::move(value); } /** *When the certificate is valid.
*/ inline CertificateDescription& WithValidity(const CertificateValidity& value) { SetValidity(value); return *this;} /** *When the certificate is valid.
*/ inline CertificateDescription& WithValidity(CertificateValidity&& value) { SetValidity(std::move(value)); return *this;} /** *The mode of the certificate.
DEFAULT
: A certificate in
* DEFAULT
mode is either generated by Amazon Web Services IoT Core or
* registered with an issuer certificate authority (CA) in DEFAULT
* mode. Devices with certificates in DEFAULT
mode aren't required to
* send the Server Name Indication (SNI) extension when connecting to Amazon Web
* Services IoT Core. However, to use features such as custom domains and VPC
* endpoints, we recommend that you use the SNI extension when connecting to Amazon
* Web Services IoT Core.
SNI_ONLY
: A certificate in
* SNI_ONLY
mode is registered without an issuer CA. Devices with
* certificates in SNI_ONLY
mode must send the SNI extension when
* connecting to Amazon Web Services IoT Core.
For more information about * the value for SNI extension, see Transport * security in IoT.
*/ inline const CertificateMode& GetCertificateMode() const{ return m_certificateMode; } /** *The mode of the certificate.
DEFAULT
: A certificate in
* DEFAULT
mode is either generated by Amazon Web Services IoT Core or
* registered with an issuer certificate authority (CA) in DEFAULT
* mode. Devices with certificates in DEFAULT
mode aren't required to
* send the Server Name Indication (SNI) extension when connecting to Amazon Web
* Services IoT Core. However, to use features such as custom domains and VPC
* endpoints, we recommend that you use the SNI extension when connecting to Amazon
* Web Services IoT Core.
SNI_ONLY
: A certificate in
* SNI_ONLY
mode is registered without an issuer CA. Devices with
* certificates in SNI_ONLY
mode must send the SNI extension when
* connecting to Amazon Web Services IoT Core.
For more information about * the value for SNI extension, see Transport * security in IoT.
*/ inline bool CertificateModeHasBeenSet() const { return m_certificateModeHasBeenSet; } /** *The mode of the certificate.
DEFAULT
: A certificate in
* DEFAULT
mode is either generated by Amazon Web Services IoT Core or
* registered with an issuer certificate authority (CA) in DEFAULT
* mode. Devices with certificates in DEFAULT
mode aren't required to
* send the Server Name Indication (SNI) extension when connecting to Amazon Web
* Services IoT Core. However, to use features such as custom domains and VPC
* endpoints, we recommend that you use the SNI extension when connecting to Amazon
* Web Services IoT Core.
SNI_ONLY
: A certificate in
* SNI_ONLY
mode is registered without an issuer CA. Devices with
* certificates in SNI_ONLY
mode must send the SNI extension when
* connecting to Amazon Web Services IoT Core.
For more information about * the value for SNI extension, see Transport * security in IoT.
*/ inline void SetCertificateMode(const CertificateMode& value) { m_certificateModeHasBeenSet = true; m_certificateMode = value; } /** *The mode of the certificate.
DEFAULT
: A certificate in
* DEFAULT
mode is either generated by Amazon Web Services IoT Core or
* registered with an issuer certificate authority (CA) in DEFAULT
* mode. Devices with certificates in DEFAULT
mode aren't required to
* send the Server Name Indication (SNI) extension when connecting to Amazon Web
* Services IoT Core. However, to use features such as custom domains and VPC
* endpoints, we recommend that you use the SNI extension when connecting to Amazon
* Web Services IoT Core.
SNI_ONLY
: A certificate in
* SNI_ONLY
mode is registered without an issuer CA. Devices with
* certificates in SNI_ONLY
mode must send the SNI extension when
* connecting to Amazon Web Services IoT Core.
For more information about * the value for SNI extension, see Transport * security in IoT.
*/ inline void SetCertificateMode(CertificateMode&& value) { m_certificateModeHasBeenSet = true; m_certificateMode = std::move(value); } /** *The mode of the certificate.
DEFAULT
: A certificate in
* DEFAULT
mode is either generated by Amazon Web Services IoT Core or
* registered with an issuer certificate authority (CA) in DEFAULT
* mode. Devices with certificates in DEFAULT
mode aren't required to
* send the Server Name Indication (SNI) extension when connecting to Amazon Web
* Services IoT Core. However, to use features such as custom domains and VPC
* endpoints, we recommend that you use the SNI extension when connecting to Amazon
* Web Services IoT Core.
SNI_ONLY
: A certificate in
* SNI_ONLY
mode is registered without an issuer CA. Devices with
* certificates in SNI_ONLY
mode must send the SNI extension when
* connecting to Amazon Web Services IoT Core.
For more information about * the value for SNI extension, see Transport * security in IoT.
*/ inline CertificateDescription& WithCertificateMode(const CertificateMode& value) { SetCertificateMode(value); return *this;} /** *The mode of the certificate.
DEFAULT
: A certificate in
* DEFAULT
mode is either generated by Amazon Web Services IoT Core or
* registered with an issuer certificate authority (CA) in DEFAULT
* mode. Devices with certificates in DEFAULT
mode aren't required to
* send the Server Name Indication (SNI) extension when connecting to Amazon Web
* Services IoT Core. However, to use features such as custom domains and VPC
* endpoints, we recommend that you use the SNI extension when connecting to Amazon
* Web Services IoT Core.
SNI_ONLY
: A certificate in
* SNI_ONLY
mode is registered without an issuer CA. Devices with
* certificates in SNI_ONLY
mode must send the SNI extension when
* connecting to Amazon Web Services IoT Core.
For more information about * the value for SNI extension, see Transport * security in IoT.
*/ inline CertificateDescription& WithCertificateMode(CertificateMode&& value) { SetCertificateMode(std::move(value)); return *this;} private: Aws::String m_certificateArn; bool m_certificateArnHasBeenSet = false; Aws::String m_certificateId; bool m_certificateIdHasBeenSet = false; Aws::String m_caCertificateId; bool m_caCertificateIdHasBeenSet = false; CertificateStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_certificatePem; bool m_certificatePemHasBeenSet = false; Aws::String m_ownedBy; bool m_ownedByHasBeenSet = false; Aws::String m_previousOwnedBy; bool m_previousOwnedByHasBeenSet = false; Aws::Utils::DateTime m_creationDate; bool m_creationDateHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedDate; bool m_lastModifiedDateHasBeenSet = false; int m_customerVersion; bool m_customerVersionHasBeenSet = false; TransferData m_transferData; bool m_transferDataHasBeenSet = false; Aws::String m_generationId; bool m_generationIdHasBeenSet = false; CertificateValidity m_validity; bool m_validityHasBeenSet = false; CertificateMode m_certificateMode; bool m_certificateModeHasBeenSet = false; }; } // namespace Model } // namespace IoT } // namespace Aws