/** * 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 { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace IoT { namespace Model { class DescribeProvisioningTemplateResult { public: AWS_IOT_API DescribeProvisioningTemplateResult(); AWS_IOT_API DescribeProvisioningTemplateResult(const Aws::AmazonWebServiceResult& result); AWS_IOT_API DescribeProvisioningTemplateResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The ARN of the provisioning template.

*/ inline const Aws::String& GetTemplateArn() const{ return m_templateArn; } /** *

The ARN of the provisioning template.

*/ inline void SetTemplateArn(const Aws::String& value) { m_templateArn = value; } /** *

The ARN of the provisioning template.

*/ inline void SetTemplateArn(Aws::String&& value) { m_templateArn = std::move(value); } /** *

The ARN of the provisioning template.

*/ inline void SetTemplateArn(const char* value) { m_templateArn.assign(value); } /** *

The ARN of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateArn(const Aws::String& value) { SetTemplateArn(value); return *this;} /** *

The ARN of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateArn(Aws::String&& value) { SetTemplateArn(std::move(value)); return *this;} /** *

The ARN of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateArn(const char* value) { SetTemplateArn(value); return *this;} /** *

The name of the provisioning template.

*/ inline const Aws::String& GetTemplateName() const{ return m_templateName; } /** *

The name of the provisioning template.

*/ inline void SetTemplateName(const Aws::String& value) { m_templateName = value; } /** *

The name of the provisioning template.

*/ inline void SetTemplateName(Aws::String&& value) { m_templateName = std::move(value); } /** *

The name of the provisioning template.

*/ inline void SetTemplateName(const char* value) { m_templateName.assign(value); } /** *

The name of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateName(const Aws::String& value) { SetTemplateName(value); return *this;} /** *

The name of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateName(Aws::String&& value) { SetTemplateName(std::move(value)); return *this;} /** *

The name of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateName(const char* value) { SetTemplateName(value); return *this;} /** *

The description of the provisioning template.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The description of the provisioning template.

*/ inline void SetDescription(const Aws::String& value) { m_description = value; } /** *

The description of the provisioning template.

*/ inline void SetDescription(Aws::String&& value) { m_description = std::move(value); } /** *

The description of the provisioning template.

*/ inline void SetDescription(const char* value) { m_description.assign(value); } /** *

The description of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The description of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The description of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The date when the provisioning template was created.

*/ inline const Aws::Utils::DateTime& GetCreationDate() const{ return m_creationDate; } /** *

The date when the provisioning template was created.

*/ inline void SetCreationDate(const Aws::Utils::DateTime& value) { m_creationDate = value; } /** *

The date when the provisioning template was created.

*/ inline void SetCreationDate(Aws::Utils::DateTime&& value) { m_creationDate = std::move(value); } /** *

The date when the provisioning template was created.

*/ inline DescribeProvisioningTemplateResult& WithCreationDate(const Aws::Utils::DateTime& value) { SetCreationDate(value); return *this;} /** *

The date when the provisioning template was created.

*/ inline DescribeProvisioningTemplateResult& WithCreationDate(Aws::Utils::DateTime&& value) { SetCreationDate(std::move(value)); return *this;} /** *

The date when the provisioning template was last modified.

*/ inline const Aws::Utils::DateTime& GetLastModifiedDate() const{ return m_lastModifiedDate; } /** *

The date when the provisioning template was last modified.

*/ inline void SetLastModifiedDate(const Aws::Utils::DateTime& value) { m_lastModifiedDate = value; } /** *

The date when the provisioning template was last modified.

*/ inline void SetLastModifiedDate(Aws::Utils::DateTime&& value) { m_lastModifiedDate = std::move(value); } /** *

The date when the provisioning template was last modified.

*/ inline DescribeProvisioningTemplateResult& WithLastModifiedDate(const Aws::Utils::DateTime& value) { SetLastModifiedDate(value); return *this;} /** *

The date when the provisioning template was last modified.

*/ inline DescribeProvisioningTemplateResult& WithLastModifiedDate(Aws::Utils::DateTime&& value) { SetLastModifiedDate(std::move(value)); return *this;} /** *

The default fleet template version ID.

*/ inline int GetDefaultVersionId() const{ return m_defaultVersionId; } /** *

The default fleet template version ID.

*/ inline void SetDefaultVersionId(int value) { m_defaultVersionId = value; } /** *

The default fleet template version ID.

*/ inline DescribeProvisioningTemplateResult& WithDefaultVersionId(int value) { SetDefaultVersionId(value); return *this;} /** *

The JSON formatted contents of the provisioning template.

*/ inline const Aws::String& GetTemplateBody() const{ return m_templateBody; } /** *

The JSON formatted contents of the provisioning template.

*/ inline void SetTemplateBody(const Aws::String& value) { m_templateBody = value; } /** *

The JSON formatted contents of the provisioning template.

*/ inline void SetTemplateBody(Aws::String&& value) { m_templateBody = std::move(value); } /** *

The JSON formatted contents of the provisioning template.

*/ inline void SetTemplateBody(const char* value) { m_templateBody.assign(value); } /** *

The JSON formatted contents of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateBody(const Aws::String& value) { SetTemplateBody(value); return *this;} /** *

The JSON formatted contents of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateBody(Aws::String&& value) { SetTemplateBody(std::move(value)); return *this;} /** *

The JSON formatted contents of the provisioning template.

*/ inline DescribeProvisioningTemplateResult& WithTemplateBody(const char* value) { SetTemplateBody(value); return *this;} /** *

True if the provisioning template is enabled, otherwise false.

*/ inline bool GetEnabled() const{ return m_enabled; } /** *

True if the provisioning template is enabled, otherwise false.

*/ inline void SetEnabled(bool value) { m_enabled = value; } /** *

True if the provisioning template is enabled, otherwise false.

*/ inline DescribeProvisioningTemplateResult& WithEnabled(bool value) { SetEnabled(value); return *this;} /** *

The ARN of the role associated with the provisioning template. This IoT role * grants permission to provision a device.

*/ inline const Aws::String& GetProvisioningRoleArn() const{ return m_provisioningRoleArn; } /** *

The ARN of the role associated with the provisioning template. This IoT role * grants permission to provision a device.

*/ inline void SetProvisioningRoleArn(const Aws::String& value) { m_provisioningRoleArn = value; } /** *

The ARN of the role associated with the provisioning template. This IoT role * grants permission to provision a device.

*/ inline void SetProvisioningRoleArn(Aws::String&& value) { m_provisioningRoleArn = std::move(value); } /** *

The ARN of the role associated with the provisioning template. This IoT role * grants permission to provision a device.

*/ inline void SetProvisioningRoleArn(const char* value) { m_provisioningRoleArn.assign(value); } /** *

The ARN of the role associated with the provisioning template. This IoT role * grants permission to provision a device.

*/ inline DescribeProvisioningTemplateResult& WithProvisioningRoleArn(const Aws::String& value) { SetProvisioningRoleArn(value); return *this;} /** *

The ARN of the role associated with the provisioning template. This IoT role * grants permission to provision a device.

*/ inline DescribeProvisioningTemplateResult& WithProvisioningRoleArn(Aws::String&& value) { SetProvisioningRoleArn(std::move(value)); return *this;} /** *

The ARN of the role associated with the provisioning template. This IoT role * grants permission to provision a device.

*/ inline DescribeProvisioningTemplateResult& WithProvisioningRoleArn(const char* value) { SetProvisioningRoleArn(value); return *this;} /** *

Gets information about a pre-provisioned hook.

*/ inline const ProvisioningHook& GetPreProvisioningHook() const{ return m_preProvisioningHook; } /** *

Gets information about a pre-provisioned hook.

*/ inline void SetPreProvisioningHook(const ProvisioningHook& value) { m_preProvisioningHook = value; } /** *

Gets information about a pre-provisioned hook.

*/ inline void SetPreProvisioningHook(ProvisioningHook&& value) { m_preProvisioningHook = std::move(value); } /** *

Gets information about a pre-provisioned hook.

*/ inline DescribeProvisioningTemplateResult& WithPreProvisioningHook(const ProvisioningHook& value) { SetPreProvisioningHook(value); return *this;} /** *

Gets information about a pre-provisioned hook.

*/ inline DescribeProvisioningTemplateResult& WithPreProvisioningHook(ProvisioningHook&& value) { SetPreProvisioningHook(std::move(value)); return *this;} /** *

The type you define in a provisioning template. You can create a template * with only one type. You can't change the template type after its creation. The * default value is FLEET_PROVISIONING. For more information about * provisioning template, see: Provisioning * template.

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

The type you define in a provisioning template. You can create a template * with only one type. You can't change the template type after its creation. The * default value is FLEET_PROVISIONING. For more information about * provisioning template, see: Provisioning * template.

*/ inline void SetType(const TemplateType& value) { m_type = value; } /** *

The type you define in a provisioning template. You can create a template * with only one type. You can't change the template type after its creation. The * default value is FLEET_PROVISIONING. For more information about * provisioning template, see: Provisioning * template.

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

The type you define in a provisioning template. You can create a template * with only one type. You can't change the template type after its creation. The * default value is FLEET_PROVISIONING. For more information about * provisioning template, see: Provisioning * template.

*/ inline DescribeProvisioningTemplateResult& WithType(const TemplateType& value) { SetType(value); return *this;} /** *

The type you define in a provisioning template. You can create a template * with only one type. You can't change the template type after its creation. The * default value is FLEET_PROVISIONING. For more information about * provisioning template, see: Provisioning * template.

*/ inline DescribeProvisioningTemplateResult& WithType(TemplateType&& value) { SetType(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeProvisioningTemplateResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeProvisioningTemplateResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeProvisioningTemplateResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_templateArn; Aws::String m_templateName; Aws::String m_description; Aws::Utils::DateTime m_creationDate; Aws::Utils::DateTime m_lastModifiedDate; int m_defaultVersionId; Aws::String m_templateBody; bool m_enabled; Aws::String m_provisioningRoleArn; ProvisioningHook m_preProvisioningHook; TemplateType m_type; Aws::String m_requestId; }; } // namespace Model } // namespace IoT } // namespace Aws