/** * 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 namespace Aws { namespace Panorama { namespace Model { /** */ class CreateNodeFromTemplateJobRequest : public PanoramaRequest { public: AWS_PANORAMA_API CreateNodeFromTemplateJobRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateNodeFromTemplateJob"; } AWS_PANORAMA_API Aws::String SerializePayload() const override; /** *

Tags for the job.

*/ inline const Aws::Vector& GetJobTags() const{ return m_jobTags; } /** *

Tags for the job.

*/ inline bool JobTagsHasBeenSet() const { return m_jobTagsHasBeenSet; } /** *

Tags for the job.

*/ inline void SetJobTags(const Aws::Vector& value) { m_jobTagsHasBeenSet = true; m_jobTags = value; } /** *

Tags for the job.

*/ inline void SetJobTags(Aws::Vector&& value) { m_jobTagsHasBeenSet = true; m_jobTags = std::move(value); } /** *

Tags for the job.

*/ inline CreateNodeFromTemplateJobRequest& WithJobTags(const Aws::Vector& value) { SetJobTags(value); return *this;} /** *

Tags for the job.

*/ inline CreateNodeFromTemplateJobRequest& WithJobTags(Aws::Vector&& value) { SetJobTags(std::move(value)); return *this;} /** *

Tags for the job.

*/ inline CreateNodeFromTemplateJobRequest& AddJobTags(const JobResourceTags& value) { m_jobTagsHasBeenSet = true; m_jobTags.push_back(value); return *this; } /** *

Tags for the job.

*/ inline CreateNodeFromTemplateJobRequest& AddJobTags(JobResourceTags&& value) { m_jobTagsHasBeenSet = true; m_jobTags.push_back(std::move(value)); return *this; } /** *

A description for the node.

*/ inline const Aws::String& GetNodeDescription() const{ return m_nodeDescription; } /** *

A description for the node.

*/ inline bool NodeDescriptionHasBeenSet() const { return m_nodeDescriptionHasBeenSet; } /** *

A description for the node.

*/ inline void SetNodeDescription(const Aws::String& value) { m_nodeDescriptionHasBeenSet = true; m_nodeDescription = value; } /** *

A description for the node.

*/ inline void SetNodeDescription(Aws::String&& value) { m_nodeDescriptionHasBeenSet = true; m_nodeDescription = std::move(value); } /** *

A description for the node.

*/ inline void SetNodeDescription(const char* value) { m_nodeDescriptionHasBeenSet = true; m_nodeDescription.assign(value); } /** *

A description for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithNodeDescription(const Aws::String& value) { SetNodeDescription(value); return *this;} /** *

A description for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithNodeDescription(Aws::String&& value) { SetNodeDescription(std::move(value)); return *this;} /** *

A description for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithNodeDescription(const char* value) { SetNodeDescription(value); return *this;} /** *

A name for the node.

*/ inline const Aws::String& GetNodeName() const{ return m_nodeName; } /** *

A name for the node.

*/ inline bool NodeNameHasBeenSet() const { return m_nodeNameHasBeenSet; } /** *

A name for the node.

*/ inline void SetNodeName(const Aws::String& value) { m_nodeNameHasBeenSet = true; m_nodeName = value; } /** *

A name for the node.

*/ inline void SetNodeName(Aws::String&& value) { m_nodeNameHasBeenSet = true; m_nodeName = std::move(value); } /** *

A name for the node.

*/ inline void SetNodeName(const char* value) { m_nodeNameHasBeenSet = true; m_nodeName.assign(value); } /** *

A name for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithNodeName(const Aws::String& value) { SetNodeName(value); return *this;} /** *

A name for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithNodeName(Aws::String&& value) { SetNodeName(std::move(value)); return *this;} /** *

A name for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithNodeName(const char* value) { SetNodeName(value); return *this;} /** *

An output package name for the node.

*/ inline const Aws::String& GetOutputPackageName() const{ return m_outputPackageName; } /** *

An output package name for the node.

*/ inline bool OutputPackageNameHasBeenSet() const { return m_outputPackageNameHasBeenSet; } /** *

An output package name for the node.

*/ inline void SetOutputPackageName(const Aws::String& value) { m_outputPackageNameHasBeenSet = true; m_outputPackageName = value; } /** *

An output package name for the node.

*/ inline void SetOutputPackageName(Aws::String&& value) { m_outputPackageNameHasBeenSet = true; m_outputPackageName = std::move(value); } /** *

An output package name for the node.

*/ inline void SetOutputPackageName(const char* value) { m_outputPackageNameHasBeenSet = true; m_outputPackageName.assign(value); } /** *

An output package name for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithOutputPackageName(const Aws::String& value) { SetOutputPackageName(value); return *this;} /** *

An output package name for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithOutputPackageName(Aws::String&& value) { SetOutputPackageName(std::move(value)); return *this;} /** *

An output package name for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithOutputPackageName(const char* value) { SetOutputPackageName(value); return *this;} /** *

An output package version for the node.

*/ inline const Aws::String& GetOutputPackageVersion() const{ return m_outputPackageVersion; } /** *

An output package version for the node.

*/ inline bool OutputPackageVersionHasBeenSet() const { return m_outputPackageVersionHasBeenSet; } /** *

An output package version for the node.

*/ inline void SetOutputPackageVersion(const Aws::String& value) { m_outputPackageVersionHasBeenSet = true; m_outputPackageVersion = value; } /** *

An output package version for the node.

*/ inline void SetOutputPackageVersion(Aws::String&& value) { m_outputPackageVersionHasBeenSet = true; m_outputPackageVersion = std::move(value); } /** *

An output package version for the node.

*/ inline void SetOutputPackageVersion(const char* value) { m_outputPackageVersionHasBeenSet = true; m_outputPackageVersion.assign(value); } /** *

An output package version for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithOutputPackageVersion(const Aws::String& value) { SetOutputPackageVersion(value); return *this;} /** *

An output package version for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithOutputPackageVersion(Aws::String&& value) { SetOutputPackageVersion(std::move(value)); return *this;} /** *

An output package version for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithOutputPackageVersion(const char* value) { SetOutputPackageVersion(value); return *this;} /** *

Template parameters for the node.

*/ inline const Aws::Map& GetTemplateParameters() const{ return m_templateParameters; } /** *

Template parameters for the node.

*/ inline bool TemplateParametersHasBeenSet() const { return m_templateParametersHasBeenSet; } /** *

Template parameters for the node.

*/ inline void SetTemplateParameters(const Aws::Map& value) { m_templateParametersHasBeenSet = true; m_templateParameters = value; } /** *

Template parameters for the node.

*/ inline void SetTemplateParameters(Aws::Map&& value) { m_templateParametersHasBeenSet = true; m_templateParameters = std::move(value); } /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithTemplateParameters(const Aws::Map& value) { SetTemplateParameters(value); return *this;} /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& WithTemplateParameters(Aws::Map&& value) { SetTemplateParameters(std::move(value)); return *this;} /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& AddTemplateParameters(const Aws::String& key, const Aws::String& value) { m_templateParametersHasBeenSet = true; m_templateParameters.emplace(key, value); return *this; } /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& AddTemplateParameters(Aws::String&& key, const Aws::String& value) { m_templateParametersHasBeenSet = true; m_templateParameters.emplace(std::move(key), value); return *this; } /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& AddTemplateParameters(const Aws::String& key, Aws::String&& value) { m_templateParametersHasBeenSet = true; m_templateParameters.emplace(key, std::move(value)); return *this; } /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& AddTemplateParameters(Aws::String&& key, Aws::String&& value) { m_templateParametersHasBeenSet = true; m_templateParameters.emplace(std::move(key), std::move(value)); return *this; } /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& AddTemplateParameters(const char* key, Aws::String&& value) { m_templateParametersHasBeenSet = true; m_templateParameters.emplace(key, std::move(value)); return *this; } /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& AddTemplateParameters(Aws::String&& key, const char* value) { m_templateParametersHasBeenSet = true; m_templateParameters.emplace(std::move(key), value); return *this; } /** *

Template parameters for the node.

*/ inline CreateNodeFromTemplateJobRequest& AddTemplateParameters(const char* key, const char* value) { m_templateParametersHasBeenSet = true; m_templateParameters.emplace(key, value); return *this; } /** *

The type of node.

*/ inline const TemplateType& GetTemplateType() const{ return m_templateType; } /** *

The type of node.

*/ inline bool TemplateTypeHasBeenSet() const { return m_templateTypeHasBeenSet; } /** *

The type of node.

*/ inline void SetTemplateType(const TemplateType& value) { m_templateTypeHasBeenSet = true; m_templateType = value; } /** *

The type of node.

*/ inline void SetTemplateType(TemplateType&& value) { m_templateTypeHasBeenSet = true; m_templateType = std::move(value); } /** *

The type of node.

*/ inline CreateNodeFromTemplateJobRequest& WithTemplateType(const TemplateType& value) { SetTemplateType(value); return *this;} /** *

The type of node.

*/ inline CreateNodeFromTemplateJobRequest& WithTemplateType(TemplateType&& value) { SetTemplateType(std::move(value)); return *this;} private: Aws::Vector m_jobTags; bool m_jobTagsHasBeenSet = false; Aws::String m_nodeDescription; bool m_nodeDescriptionHasBeenSet = false; Aws::String m_nodeName; bool m_nodeNameHasBeenSet = false; Aws::String m_outputPackageName; bool m_outputPackageNameHasBeenSet = false; Aws::String m_outputPackageVersion; bool m_outputPackageVersionHasBeenSet = false; Aws::Map m_templateParameters; bool m_templateParametersHasBeenSet = false; TemplateType m_templateType; bool m_templateTypeHasBeenSet = false; }; } // namespace Model } // namespace Panorama } // namespace Aws