/** * 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 #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Transfer { namespace Model { /** *

The details for an execution object.

See Also:

AWS * API Reference

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

A unique identifier for the execution of a workflow.

*/ inline const Aws::String& GetExecutionId() const{ return m_executionId; } /** *

A unique identifier for the execution of a workflow.

*/ inline bool ExecutionIdHasBeenSet() const { return m_executionIdHasBeenSet; } /** *

A unique identifier for the execution of a workflow.

*/ inline void SetExecutionId(const Aws::String& value) { m_executionIdHasBeenSet = true; m_executionId = value; } /** *

A unique identifier for the execution of a workflow.

*/ inline void SetExecutionId(Aws::String&& value) { m_executionIdHasBeenSet = true; m_executionId = std::move(value); } /** *

A unique identifier for the execution of a workflow.

*/ inline void SetExecutionId(const char* value) { m_executionIdHasBeenSet = true; m_executionId.assign(value); } /** *

A unique identifier for the execution of a workflow.

*/ inline DescribedExecution& WithExecutionId(const Aws::String& value) { SetExecutionId(value); return *this;} /** *

A unique identifier for the execution of a workflow.

*/ inline DescribedExecution& WithExecutionId(Aws::String&& value) { SetExecutionId(std::move(value)); return *this;} /** *

A unique identifier for the execution of a workflow.

*/ inline DescribedExecution& WithExecutionId(const char* value) { SetExecutionId(value); return *this;} /** *

A structure that describes the Amazon S3 or EFS file location. This is the * file location when the execution begins: if the file is being copied, this is * the initial (as opposed to destination) file location.

*/ inline const FileLocation& GetInitialFileLocation() const{ return m_initialFileLocation; } /** *

A structure that describes the Amazon S3 or EFS file location. This is the * file location when the execution begins: if the file is being copied, this is * the initial (as opposed to destination) file location.

*/ inline bool InitialFileLocationHasBeenSet() const { return m_initialFileLocationHasBeenSet; } /** *

A structure that describes the Amazon S3 or EFS file location. This is the * file location when the execution begins: if the file is being copied, this is * the initial (as opposed to destination) file location.

*/ inline void SetInitialFileLocation(const FileLocation& value) { m_initialFileLocationHasBeenSet = true; m_initialFileLocation = value; } /** *

A structure that describes the Amazon S3 or EFS file location. This is the * file location when the execution begins: if the file is being copied, this is * the initial (as opposed to destination) file location.

*/ inline void SetInitialFileLocation(FileLocation&& value) { m_initialFileLocationHasBeenSet = true; m_initialFileLocation = std::move(value); } /** *

A structure that describes the Amazon S3 or EFS file location. This is the * file location when the execution begins: if the file is being copied, this is * the initial (as opposed to destination) file location.

*/ inline DescribedExecution& WithInitialFileLocation(const FileLocation& value) { SetInitialFileLocation(value); return *this;} /** *

A structure that describes the Amazon S3 or EFS file location. This is the * file location when the execution begins: if the file is being copied, this is * the initial (as opposed to destination) file location.

*/ inline DescribedExecution& WithInitialFileLocation(FileLocation&& value) { SetInitialFileLocation(std::move(value)); return *this;} /** *

A container object for the session details that are associated with a * workflow.

*/ inline const ServiceMetadata& GetServiceMetadata() const{ return m_serviceMetadata; } /** *

A container object for the session details that are associated with a * workflow.

*/ inline bool ServiceMetadataHasBeenSet() const { return m_serviceMetadataHasBeenSet; } /** *

A container object for the session details that are associated with a * workflow.

*/ inline void SetServiceMetadata(const ServiceMetadata& value) { m_serviceMetadataHasBeenSet = true; m_serviceMetadata = value; } /** *

A container object for the session details that are associated with a * workflow.

*/ inline void SetServiceMetadata(ServiceMetadata&& value) { m_serviceMetadataHasBeenSet = true; m_serviceMetadata = std::move(value); } /** *

A container object for the session details that are associated with a * workflow.

*/ inline DescribedExecution& WithServiceMetadata(const ServiceMetadata& value) { SetServiceMetadata(value); return *this;} /** *

A container object for the session details that are associated with a * workflow.

*/ inline DescribedExecution& WithServiceMetadata(ServiceMetadata&& value) { SetServiceMetadata(std::move(value)); return *this;} /** *

The IAM role associated with the execution.

*/ inline const Aws::String& GetExecutionRole() const{ return m_executionRole; } /** *

The IAM role associated with the execution.

*/ inline bool ExecutionRoleHasBeenSet() const { return m_executionRoleHasBeenSet; } /** *

The IAM role associated with the execution.

*/ inline void SetExecutionRole(const Aws::String& value) { m_executionRoleHasBeenSet = true; m_executionRole = value; } /** *

The IAM role associated with the execution.

*/ inline void SetExecutionRole(Aws::String&& value) { m_executionRoleHasBeenSet = true; m_executionRole = std::move(value); } /** *

The IAM role associated with the execution.

*/ inline void SetExecutionRole(const char* value) { m_executionRoleHasBeenSet = true; m_executionRole.assign(value); } /** *

The IAM role associated with the execution.

*/ inline DescribedExecution& WithExecutionRole(const Aws::String& value) { SetExecutionRole(value); return *this;} /** *

The IAM role associated with the execution.

*/ inline DescribedExecution& WithExecutionRole(Aws::String&& value) { SetExecutionRole(std::move(value)); return *this;} /** *

The IAM role associated with the execution.

*/ inline DescribedExecution& WithExecutionRole(const char* value) { SetExecutionRole(value); return *this;} /** *

The IAM logging role associated with the execution.

*/ inline const LoggingConfiguration& GetLoggingConfiguration() const{ return m_loggingConfiguration; } /** *

The IAM logging role associated with the execution.

*/ inline bool LoggingConfigurationHasBeenSet() const { return m_loggingConfigurationHasBeenSet; } /** *

The IAM logging role associated with the execution.

*/ inline void SetLoggingConfiguration(const LoggingConfiguration& value) { m_loggingConfigurationHasBeenSet = true; m_loggingConfiguration = value; } /** *

The IAM logging role associated with the execution.

*/ inline void SetLoggingConfiguration(LoggingConfiguration&& value) { m_loggingConfigurationHasBeenSet = true; m_loggingConfiguration = std::move(value); } /** *

The IAM logging role associated with the execution.

*/ inline DescribedExecution& WithLoggingConfiguration(const LoggingConfiguration& value) { SetLoggingConfiguration(value); return *this;} /** *

The IAM logging role associated with the execution.

*/ inline DescribedExecution& WithLoggingConfiguration(LoggingConfiguration&& value) { SetLoggingConfiguration(std::move(value)); return *this;} inline const PosixProfile& GetPosixProfile() const{ return m_posixProfile; } inline bool PosixProfileHasBeenSet() const { return m_posixProfileHasBeenSet; } inline void SetPosixProfile(const PosixProfile& value) { m_posixProfileHasBeenSet = true; m_posixProfile = value; } inline void SetPosixProfile(PosixProfile&& value) { m_posixProfileHasBeenSet = true; m_posixProfile = std::move(value); } inline DescribedExecution& WithPosixProfile(const PosixProfile& value) { SetPosixProfile(value); return *this;} inline DescribedExecution& WithPosixProfile(PosixProfile&& value) { SetPosixProfile(std::move(value)); return *this;} /** *

The status is one of the execution. Can be in progress, completed, exception * encountered, or handling the exception.

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

The status is one of the execution. Can be in progress, completed, exception * encountered, or handling the exception.

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

The status is one of the execution. Can be in progress, completed, exception * encountered, or handling the exception.

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

The status is one of the execution. Can be in progress, completed, exception * encountered, or handling the exception.

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

The status is one of the execution. Can be in progress, completed, exception * encountered, or handling the exception.

*/ inline DescribedExecution& WithStatus(const ExecutionStatus& value) { SetStatus(value); return *this;} /** *

The status is one of the execution. Can be in progress, completed, exception * encountered, or handling the exception.

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

A structure that describes the execution results. This includes a list of the * steps along with the details of each step, error type and message (if any), and * the OnExceptionSteps structure.

*/ inline const ExecutionResults& GetResults() const{ return m_results; } /** *

A structure that describes the execution results. This includes a list of the * steps along with the details of each step, error type and message (if any), and * the OnExceptionSteps structure.

*/ inline bool ResultsHasBeenSet() const { return m_resultsHasBeenSet; } /** *

A structure that describes the execution results. This includes a list of the * steps along with the details of each step, error type and message (if any), and * the OnExceptionSteps structure.

*/ inline void SetResults(const ExecutionResults& value) { m_resultsHasBeenSet = true; m_results = value; } /** *

A structure that describes the execution results. This includes a list of the * steps along with the details of each step, error type and message (if any), and * the OnExceptionSteps structure.

*/ inline void SetResults(ExecutionResults&& value) { m_resultsHasBeenSet = true; m_results = std::move(value); } /** *

A structure that describes the execution results. This includes a list of the * steps along with the details of each step, error type and message (if any), and * the OnExceptionSteps structure.

*/ inline DescribedExecution& WithResults(const ExecutionResults& value) { SetResults(value); return *this;} /** *

A structure that describes the execution results. This includes a list of the * steps along with the details of each step, error type and message (if any), and * the OnExceptionSteps structure.

*/ inline DescribedExecution& WithResults(ExecutionResults&& value) { SetResults(std::move(value)); return *this;} private: Aws::String m_executionId; bool m_executionIdHasBeenSet = false; FileLocation m_initialFileLocation; bool m_initialFileLocationHasBeenSet = false; ServiceMetadata m_serviceMetadata; bool m_serviceMetadataHasBeenSet = false; Aws::String m_executionRole; bool m_executionRoleHasBeenSet = false; LoggingConfiguration m_loggingConfiguration; bool m_loggingConfigurationHasBeenSet = false; PosixProfile m_posixProfile; bool m_posixProfileHasBeenSet = false; ExecutionStatus m_status; bool m_statusHasBeenSet = false; ExecutionResults m_results; bool m_resultsHasBeenSet = false; }; } // namespace Model } // namespace Transfer } // namespace Aws