/** * 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 Panorama { namespace Model { /** *

A job to create a camera stream node.

See Also:

AWS * API Reference

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

When the job was created.

*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *

When the job was created.

*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *

When the job was created.

*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *

When the job was created.

*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *

When the job was created.

*/ inline NodeFromTemplateJob& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *

When the job was created.

*/ inline NodeFromTemplateJob& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *

The job's ID.

*/ inline const Aws::String& GetJobId() const{ return m_jobId; } /** *

The job's ID.

*/ inline bool JobIdHasBeenSet() const { return m_jobIdHasBeenSet; } /** *

The job's ID.

*/ inline void SetJobId(const Aws::String& value) { m_jobIdHasBeenSet = true; m_jobId = value; } /** *

The job's ID.

*/ inline void SetJobId(Aws::String&& value) { m_jobIdHasBeenSet = true; m_jobId = std::move(value); } /** *

The job's ID.

*/ inline void SetJobId(const char* value) { m_jobIdHasBeenSet = true; m_jobId.assign(value); } /** *

The job's ID.

*/ inline NodeFromTemplateJob& WithJobId(const Aws::String& value) { SetJobId(value); return *this;} /** *

The job's ID.

*/ inline NodeFromTemplateJob& WithJobId(Aws::String&& value) { SetJobId(std::move(value)); return *this;} /** *

The job's ID.

*/ inline NodeFromTemplateJob& WithJobId(const char* value) { SetJobId(value); return *this;} /** *

The node's name.

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

The node's name.

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

The node's name.

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

The node's name.

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

The node's name.

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

The node's name.

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

The node's name.

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

The node's name.

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

The job's status.

*/ inline const NodeFromTemplateJobStatus& GetStatus() const{ return m_status; } /** *

The job's status.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The job's status.

*/ inline void SetStatus(const NodeFromTemplateJobStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The job's status.

*/ inline void SetStatus(NodeFromTemplateJobStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The job's status.

*/ inline NodeFromTemplateJob& WithStatus(const NodeFromTemplateJobStatus& value) { SetStatus(value); return *this;} /** *

The job's status.

*/ inline NodeFromTemplateJob& WithStatus(NodeFromTemplateJobStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The job's status message.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

The job's status message.

*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *

The job's status message.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *

The job's status message.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *

The job's status message.

*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *

The job's status message.

*/ inline NodeFromTemplateJob& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

The job's status message.

*/ inline NodeFromTemplateJob& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

The job's status message.

*/ inline NodeFromTemplateJob& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *

The job's template type.

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

The job's template type.

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

The job's template type.

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

The job's template type.

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

The job's template type.

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

The job's template type.

*/ inline NodeFromTemplateJob& WithTemplateType(TemplateType&& value) { SetTemplateType(std::move(value)); return *this;} private: Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::String m_jobId; bool m_jobIdHasBeenSet = false; Aws::String m_nodeName; bool m_nodeNameHasBeenSet = false; NodeFromTemplateJobStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; TemplateType m_templateType; bool m_templateTypeHasBeenSet = false; }; } // namespace Model } // namespace Panorama } // namespace Aws