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

Defines the X.509 CertificatePolicies extension.

See * Also:

AWS * API Reference

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

Specifies the object identifier (OID) of the certificate policy under which * the certificate was issued. For more information, see NIST's definition of Object Identifier * (OID).

*/ inline const Aws::String& GetCertPolicyId() const{ return m_certPolicyId; } /** *

Specifies the object identifier (OID) of the certificate policy under which * the certificate was issued. For more information, see NIST's definition of Object Identifier * (OID).

*/ inline bool CertPolicyIdHasBeenSet() const { return m_certPolicyIdHasBeenSet; } /** *

Specifies the object identifier (OID) of the certificate policy under which * the certificate was issued. For more information, see NIST's definition of Object Identifier * (OID).

*/ inline void SetCertPolicyId(const Aws::String& value) { m_certPolicyIdHasBeenSet = true; m_certPolicyId = value; } /** *

Specifies the object identifier (OID) of the certificate policy under which * the certificate was issued. For more information, see NIST's definition of Object Identifier * (OID).

*/ inline void SetCertPolicyId(Aws::String&& value) { m_certPolicyIdHasBeenSet = true; m_certPolicyId = std::move(value); } /** *

Specifies the object identifier (OID) of the certificate policy under which * the certificate was issued. For more information, see NIST's definition of Object Identifier * (OID).

*/ inline void SetCertPolicyId(const char* value) { m_certPolicyIdHasBeenSet = true; m_certPolicyId.assign(value); } /** *

Specifies the object identifier (OID) of the certificate policy under which * the certificate was issued. For more information, see NIST's definition of Object Identifier * (OID).

*/ inline PolicyInformation& WithCertPolicyId(const Aws::String& value) { SetCertPolicyId(value); return *this;} /** *

Specifies the object identifier (OID) of the certificate policy under which * the certificate was issued. For more information, see NIST's definition of Object Identifier * (OID).

*/ inline PolicyInformation& WithCertPolicyId(Aws::String&& value) { SetCertPolicyId(std::move(value)); return *this;} /** *

Specifies the object identifier (OID) of the certificate policy under which * the certificate was issued. For more information, see NIST's definition of Object Identifier * (OID).

*/ inline PolicyInformation& WithCertPolicyId(const char* value) { SetCertPolicyId(value); return *this;} /** *

Modifies the given CertPolicyId with a qualifier. Amazon Web * Services Private CA supports the certification practice statement (CPS) * qualifier.

*/ inline const Aws::Vector& GetPolicyQualifiers() const{ return m_policyQualifiers; } /** *

Modifies the given CertPolicyId with a qualifier. Amazon Web * Services Private CA supports the certification practice statement (CPS) * qualifier.

*/ inline bool PolicyQualifiersHasBeenSet() const { return m_policyQualifiersHasBeenSet; } /** *

Modifies the given CertPolicyId with a qualifier. Amazon Web * Services Private CA supports the certification practice statement (CPS) * qualifier.

*/ inline void SetPolicyQualifiers(const Aws::Vector& value) { m_policyQualifiersHasBeenSet = true; m_policyQualifiers = value; } /** *

Modifies the given CertPolicyId with a qualifier. Amazon Web * Services Private CA supports the certification practice statement (CPS) * qualifier.

*/ inline void SetPolicyQualifiers(Aws::Vector&& value) { m_policyQualifiersHasBeenSet = true; m_policyQualifiers = std::move(value); } /** *

Modifies the given CertPolicyId with a qualifier. Amazon Web * Services Private CA supports the certification practice statement (CPS) * qualifier.

*/ inline PolicyInformation& WithPolicyQualifiers(const Aws::Vector& value) { SetPolicyQualifiers(value); return *this;} /** *

Modifies the given CertPolicyId with a qualifier. Amazon Web * Services Private CA supports the certification practice statement (CPS) * qualifier.

*/ inline PolicyInformation& WithPolicyQualifiers(Aws::Vector&& value) { SetPolicyQualifiers(std::move(value)); return *this;} /** *

Modifies the given CertPolicyId with a qualifier. Amazon Web * Services Private CA supports the certification practice statement (CPS) * qualifier.

*/ inline PolicyInformation& AddPolicyQualifiers(const PolicyQualifierInfo& value) { m_policyQualifiersHasBeenSet = true; m_policyQualifiers.push_back(value); return *this; } /** *

Modifies the given CertPolicyId with a qualifier. Amazon Web * Services Private CA supports the certification practice statement (CPS) * qualifier.

*/ inline PolicyInformation& AddPolicyQualifiers(PolicyQualifierInfo&& value) { m_policyQualifiersHasBeenSet = true; m_policyQualifiers.push_back(std::move(value)); return *this; } private: Aws::String m_certPolicyId; bool m_certPolicyIdHasBeenSet = false; Aws::Vector m_policyQualifiers; bool m_policyQualifiersHasBeenSet = false; }; } // namespace Model } // namespace ACMPCA } // namespace Aws