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

Container for the WorkflowDetail data type. It is used by * actions that trigger a workflow to begin execution.

See Also:

* AWS * API Reference

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

A trigger that starts a workflow: the workflow begins to execute after a file * is uploaded.

To remove an associated workflow from a server, you can * provide an empty OnUpload object, as in the following example.

*

aws transfer update-server --server-id s-01234567890abcdef * --workflow-details '{"OnUpload":[]}'

*/ inline const Aws::Vector& GetOnUpload() const{ return m_onUpload; } /** *

A trigger that starts a workflow: the workflow begins to execute after a file * is uploaded.

To remove an associated workflow from a server, you can * provide an empty OnUpload object, as in the following example.

*

aws transfer update-server --server-id s-01234567890abcdef * --workflow-details '{"OnUpload":[]}'

*/ inline bool OnUploadHasBeenSet() const { return m_onUploadHasBeenSet; } /** *

A trigger that starts a workflow: the workflow begins to execute after a file * is uploaded.

To remove an associated workflow from a server, you can * provide an empty OnUpload object, as in the following example.

*

aws transfer update-server --server-id s-01234567890abcdef * --workflow-details '{"OnUpload":[]}'

*/ inline void SetOnUpload(const Aws::Vector& value) { m_onUploadHasBeenSet = true; m_onUpload = value; } /** *

A trigger that starts a workflow: the workflow begins to execute after a file * is uploaded.

To remove an associated workflow from a server, you can * provide an empty OnUpload object, as in the following example.

*

aws transfer update-server --server-id s-01234567890abcdef * --workflow-details '{"OnUpload":[]}'

*/ inline void SetOnUpload(Aws::Vector&& value) { m_onUploadHasBeenSet = true; m_onUpload = std::move(value); } /** *

A trigger that starts a workflow: the workflow begins to execute after a file * is uploaded.

To remove an associated workflow from a server, you can * provide an empty OnUpload object, as in the following example.

*

aws transfer update-server --server-id s-01234567890abcdef * --workflow-details '{"OnUpload":[]}'

*/ inline WorkflowDetails& WithOnUpload(const Aws::Vector& value) { SetOnUpload(value); return *this;} /** *

A trigger that starts a workflow: the workflow begins to execute after a file * is uploaded.

To remove an associated workflow from a server, you can * provide an empty OnUpload object, as in the following example.

*

aws transfer update-server --server-id s-01234567890abcdef * --workflow-details '{"OnUpload":[]}'

*/ inline WorkflowDetails& WithOnUpload(Aws::Vector&& value) { SetOnUpload(std::move(value)); return *this;} /** *

A trigger that starts a workflow: the workflow begins to execute after a file * is uploaded.

To remove an associated workflow from a server, you can * provide an empty OnUpload object, as in the following example.

*

aws transfer update-server --server-id s-01234567890abcdef * --workflow-details '{"OnUpload":[]}'

*/ inline WorkflowDetails& AddOnUpload(const WorkflowDetail& value) { m_onUploadHasBeenSet = true; m_onUpload.push_back(value); return *this; } /** *

A trigger that starts a workflow: the workflow begins to execute after a file * is uploaded.

To remove an associated workflow from a server, you can * provide an empty OnUpload object, as in the following example.

*

aws transfer update-server --server-id s-01234567890abcdef * --workflow-details '{"OnUpload":[]}'

*/ inline WorkflowDetails& AddOnUpload(WorkflowDetail&& value) { m_onUploadHasBeenSet = true; m_onUpload.push_back(std::move(value)); return *this; } /** *

A trigger that starts a workflow if a file is only partially uploaded. You * can attach a workflow to a server that executes whenever there is a partial * upload.

A partial upload occurs when a file is open when the * session disconnects.

*/ inline const Aws::Vector& GetOnPartialUpload() const{ return m_onPartialUpload; } /** *

A trigger that starts a workflow if a file is only partially uploaded. You * can attach a workflow to a server that executes whenever there is a partial * upload.

A partial upload occurs when a file is open when the * session disconnects.

*/ inline bool OnPartialUploadHasBeenSet() const { return m_onPartialUploadHasBeenSet; } /** *

A trigger that starts a workflow if a file is only partially uploaded. You * can attach a workflow to a server that executes whenever there is a partial * upload.

A partial upload occurs when a file is open when the * session disconnects.

*/ inline void SetOnPartialUpload(const Aws::Vector& value) { m_onPartialUploadHasBeenSet = true; m_onPartialUpload = value; } /** *

A trigger that starts a workflow if a file is only partially uploaded. You * can attach a workflow to a server that executes whenever there is a partial * upload.

A partial upload occurs when a file is open when the * session disconnects.

*/ inline void SetOnPartialUpload(Aws::Vector&& value) { m_onPartialUploadHasBeenSet = true; m_onPartialUpload = std::move(value); } /** *

A trigger that starts a workflow if a file is only partially uploaded. You * can attach a workflow to a server that executes whenever there is a partial * upload.

A partial upload occurs when a file is open when the * session disconnects.

*/ inline WorkflowDetails& WithOnPartialUpload(const Aws::Vector& value) { SetOnPartialUpload(value); return *this;} /** *

A trigger that starts a workflow if a file is only partially uploaded. You * can attach a workflow to a server that executes whenever there is a partial * upload.

A partial upload occurs when a file is open when the * session disconnects.

*/ inline WorkflowDetails& WithOnPartialUpload(Aws::Vector&& value) { SetOnPartialUpload(std::move(value)); return *this;} /** *

A trigger that starts a workflow if a file is only partially uploaded. You * can attach a workflow to a server that executes whenever there is a partial * upload.

A partial upload occurs when a file is open when the * session disconnects.

*/ inline WorkflowDetails& AddOnPartialUpload(const WorkflowDetail& value) { m_onPartialUploadHasBeenSet = true; m_onPartialUpload.push_back(value); return *this; } /** *

A trigger that starts a workflow if a file is only partially uploaded. You * can attach a workflow to a server that executes whenever there is a partial * upload.

A partial upload occurs when a file is open when the * session disconnects.

*/ inline WorkflowDetails& AddOnPartialUpload(WorkflowDetail&& value) { m_onPartialUploadHasBeenSet = true; m_onPartialUpload.push_back(std::move(value)); return *this; } private: Aws::Vector m_onUpload; bool m_onUploadHasBeenSet = false; Aws::Vector m_onPartialUpload; bool m_onPartialUploadHasBeenSet = false; }; } // namespace Model } // namespace Transfer } // namespace Aws