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

Describes an Amazon Lightsail SSL/TLS certificate.

See Also:

* AWS * API Reference

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

The Amazon Resource Name (ARN) of the certificate.

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

The Amazon Resource Name (ARN) of the certificate.

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

The Amazon Resource Name (ARN) of the certificate.

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

The Amazon Resource Name (ARN) of the certificate.

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

The Amazon Resource Name (ARN) of the certificate.

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

The Amazon Resource Name (ARN) of the certificate.

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

The Amazon Resource Name (ARN) of the certificate.

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

The Amazon Resource Name (ARN) of the certificate.

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

The name of the certificate.

*/ inline const Aws::String& GetCertificateName() const{ return m_certificateName; } /** *

The name of the certificate.

*/ inline bool CertificateNameHasBeenSet() const { return m_certificateNameHasBeenSet; } /** *

The name of the certificate.

*/ inline void SetCertificateName(const Aws::String& value) { m_certificateNameHasBeenSet = true; m_certificateName = value; } /** *

The name of the certificate.

*/ inline void SetCertificateName(Aws::String&& value) { m_certificateNameHasBeenSet = true; m_certificateName = std::move(value); } /** *

The name of the certificate.

*/ inline void SetCertificateName(const char* value) { m_certificateNameHasBeenSet = true; m_certificateName.assign(value); } /** *

The name of the certificate.

*/ inline CertificateSummary& WithCertificateName(const Aws::String& value) { SetCertificateName(value); return *this;} /** *

The name of the certificate.

*/ inline CertificateSummary& WithCertificateName(Aws::String&& value) { SetCertificateName(std::move(value)); return *this;} /** *

The name of the certificate.

*/ inline CertificateSummary& WithCertificateName(const char* value) { SetCertificateName(value); return *this;} /** *

The domain name of the certificate.

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

The domain name of the certificate.

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

The domain name of the certificate.

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

The domain name of the certificate.

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

The domain name of the certificate.

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

The domain name of the certificate.

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

The domain name of the certificate.

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

The domain name of the certificate.

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

An object that describes a certificate in detail.

*/ inline const Certificate& GetCertificateDetail() const{ return m_certificateDetail; } /** *

An object that describes a certificate in detail.

*/ inline bool CertificateDetailHasBeenSet() const { return m_certificateDetailHasBeenSet; } /** *

An object that describes a certificate in detail.

*/ inline void SetCertificateDetail(const Certificate& value) { m_certificateDetailHasBeenSet = true; m_certificateDetail = value; } /** *

An object that describes a certificate in detail.

*/ inline void SetCertificateDetail(Certificate&& value) { m_certificateDetailHasBeenSet = true; m_certificateDetail = std::move(value); } /** *

An object that describes a certificate in detail.

*/ inline CertificateSummary& WithCertificateDetail(const Certificate& value) { SetCertificateDetail(value); return *this;} /** *

An object that describes a certificate in detail.

*/ inline CertificateSummary& WithCertificateDetail(Certificate&& value) { SetCertificateDetail(std::move(value)); return *this;} /** *

The tag keys and optional values for the resource. For more information about * tags in Lightsail, see the Amazon * Lightsail Developer Guide.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

The tag keys and optional values for the resource. For more information about * tags in Lightsail, see the Amazon * Lightsail Developer Guide.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The tag keys and optional values for the resource. For more information about * tags in Lightsail, see the Amazon * Lightsail Developer Guide.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The tag keys and optional values for the resource. For more information about * tags in Lightsail, see the Amazon * Lightsail Developer Guide.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The tag keys and optional values for the resource. For more information about * tags in Lightsail, see the Amazon * Lightsail Developer Guide.

*/ inline CertificateSummary& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

The tag keys and optional values for the resource. For more information about * tags in Lightsail, see the Amazon * Lightsail Developer Guide.

*/ inline CertificateSummary& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

The tag keys and optional values for the resource. For more information about * tags in Lightsail, see the Amazon * Lightsail Developer Guide.

*/ inline CertificateSummary& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The tag keys and optional values for the resource. For more information about * tags in Lightsail, see the Amazon * Lightsail Developer Guide.

*/ inline CertificateSummary& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_certificateArn; bool m_certificateArnHasBeenSet = false; Aws::String m_certificateName; bool m_certificateNameHasBeenSet = false; Aws::String m_domainName; bool m_domainNameHasBeenSet = false; Certificate m_certificateDetail; bool m_certificateDetailHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace Lightsail } // namespace Aws