/** * 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 Omics { namespace Model { /** */ class StartRunRequest : public OmicsRequest { public: AWS_OMICS_API StartRunRequest(); // 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 "StartRun"; } AWS_OMICS_API Aws::String SerializePayload() const override; /** *

The run's workflow ID.

*/ inline const Aws::String& GetWorkflowId() const{ return m_workflowId; } /** *

The run's workflow ID.

*/ inline bool WorkflowIdHasBeenSet() const { return m_workflowIdHasBeenSet; } /** *

The run's workflow ID.

*/ inline void SetWorkflowId(const Aws::String& value) { m_workflowIdHasBeenSet = true; m_workflowId = value; } /** *

The run's workflow ID.

*/ inline void SetWorkflowId(Aws::String&& value) { m_workflowIdHasBeenSet = true; m_workflowId = std::move(value); } /** *

The run's workflow ID.

*/ inline void SetWorkflowId(const char* value) { m_workflowIdHasBeenSet = true; m_workflowId.assign(value); } /** *

The run's workflow ID.

*/ inline StartRunRequest& WithWorkflowId(const Aws::String& value) { SetWorkflowId(value); return *this;} /** *

The run's workflow ID.

*/ inline StartRunRequest& WithWorkflowId(Aws::String&& value) { SetWorkflowId(std::move(value)); return *this;} /** *

The run's workflow ID.

*/ inline StartRunRequest& WithWorkflowId(const char* value) { SetWorkflowId(value); return *this;} /** *

The run's workflows type.

*/ inline const WorkflowType& GetWorkflowType() const{ return m_workflowType; } /** *

The run's workflows type.

*/ inline bool WorkflowTypeHasBeenSet() const { return m_workflowTypeHasBeenSet; } /** *

The run's workflows type.

*/ inline void SetWorkflowType(const WorkflowType& value) { m_workflowTypeHasBeenSet = true; m_workflowType = value; } /** *

The run's workflows type.

*/ inline void SetWorkflowType(WorkflowType&& value) { m_workflowTypeHasBeenSet = true; m_workflowType = std::move(value); } /** *

The run's workflows type.

*/ inline StartRunRequest& WithWorkflowType(const WorkflowType& value) { SetWorkflowType(value); return *this;} /** *

The run's workflows type.

*/ inline StartRunRequest& WithWorkflowType(WorkflowType&& value) { SetWorkflowType(std::move(value)); return *this;} /** *

The run's ID.

*/ inline const Aws::String& GetRunId() const{ return m_runId; } /** *

The run's ID.

*/ inline bool RunIdHasBeenSet() const { return m_runIdHasBeenSet; } /** *

The run's ID.

*/ inline void SetRunId(const Aws::String& value) { m_runIdHasBeenSet = true; m_runId = value; } /** *

The run's ID.

*/ inline void SetRunId(Aws::String&& value) { m_runIdHasBeenSet = true; m_runId = std::move(value); } /** *

The run's ID.

*/ inline void SetRunId(const char* value) { m_runIdHasBeenSet = true; m_runId.assign(value); } /** *

The run's ID.

*/ inline StartRunRequest& WithRunId(const Aws::String& value) { SetRunId(value); return *this;} /** *

The run's ID.

*/ inline StartRunRequest& WithRunId(Aws::String&& value) { SetRunId(std::move(value)); return *this;} /** *

The run's ID.

*/ inline StartRunRequest& WithRunId(const char* value) { SetRunId(value); return *this;} /** *

A service role for the run.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

A service role for the run.

*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *

A service role for the run.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *

A service role for the run.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *

A service role for the run.

*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *

A service role for the run.

*/ inline StartRunRequest& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

A service role for the run.

*/ inline StartRunRequest& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

A service role for the run.

*/ inline StartRunRequest& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

A name for the run.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

A name for the run.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

A name for the run.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

A name for the run.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

A name for the run.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

A name for the run.

*/ inline StartRunRequest& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

A name for the run.

*/ inline StartRunRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

A name for the run.

*/ inline StartRunRequest& WithName(const char* value) { SetName(value); return *this;} /** *

The run's group ID.

*/ inline const Aws::String& GetRunGroupId() const{ return m_runGroupId; } /** *

The run's group ID.

*/ inline bool RunGroupIdHasBeenSet() const { return m_runGroupIdHasBeenSet; } /** *

The run's group ID.

*/ inline void SetRunGroupId(const Aws::String& value) { m_runGroupIdHasBeenSet = true; m_runGroupId = value; } /** *

The run's group ID.

*/ inline void SetRunGroupId(Aws::String&& value) { m_runGroupIdHasBeenSet = true; m_runGroupId = std::move(value); } /** *

The run's group ID.

*/ inline void SetRunGroupId(const char* value) { m_runGroupIdHasBeenSet = true; m_runGroupId.assign(value); } /** *

The run's group ID.

*/ inline StartRunRequest& WithRunGroupId(const Aws::String& value) { SetRunGroupId(value); return *this;} /** *

The run's group ID.

*/ inline StartRunRequest& WithRunGroupId(Aws::String&& value) { SetRunGroupId(std::move(value)); return *this;} /** *

The run's group ID.

*/ inline StartRunRequest& WithRunGroupId(const char* value) { SetRunGroupId(value); return *this;} /** *

A priority for the run.

*/ inline int GetPriority() const{ return m_priority; } /** *

A priority for the run.

*/ inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; } /** *

A priority for the run.

*/ inline void SetPriority(int value) { m_priorityHasBeenSet = true; m_priority = value; } /** *

A priority for the run.

*/ inline StartRunRequest& WithPriority(int value) { SetPriority(value); return *this;} /** *

Parameters for the run.

*/ inline Aws::Utils::DocumentView GetParameters() const{ return m_parameters; } /** *

Parameters for the run.

*/ inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } /** *

Parameters for the run.

*/ inline void SetParameters(const Aws::Utils::Document& value) { m_parametersHasBeenSet = true; m_parameters = value; } /** *

Parameters for the run.

*/ inline void SetParameters(Aws::Utils::Document&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); } /** *

Parameters for the run.

*/ inline StartRunRequest& WithParameters(const Aws::Utils::Document& value) { SetParameters(value); return *this;} /** *

Parameters for the run.

*/ inline StartRunRequest& WithParameters(Aws::Utils::Document&& value) { SetParameters(std::move(value)); return *this;} /** *

A storage capacity for the run in gigabytes.

*/ inline int GetStorageCapacity() const{ return m_storageCapacity; } /** *

A storage capacity for the run in gigabytes.

*/ inline bool StorageCapacityHasBeenSet() const { return m_storageCapacityHasBeenSet; } /** *

A storage capacity for the run in gigabytes.

*/ inline void SetStorageCapacity(int value) { m_storageCapacityHasBeenSet = true; m_storageCapacity = value; } /** *

A storage capacity for the run in gigabytes.

*/ inline StartRunRequest& WithStorageCapacity(int value) { SetStorageCapacity(value); return *this;} /** *

An output URI for the run.

*/ inline const Aws::String& GetOutputUri() const{ return m_outputUri; } /** *

An output URI for the run.

*/ inline bool OutputUriHasBeenSet() const { return m_outputUriHasBeenSet; } /** *

An output URI for the run.

*/ inline void SetOutputUri(const Aws::String& value) { m_outputUriHasBeenSet = true; m_outputUri = value; } /** *

An output URI for the run.

*/ inline void SetOutputUri(Aws::String&& value) { m_outputUriHasBeenSet = true; m_outputUri = std::move(value); } /** *

An output URI for the run.

*/ inline void SetOutputUri(const char* value) { m_outputUriHasBeenSet = true; m_outputUri.assign(value); } /** *

An output URI for the run.

*/ inline StartRunRequest& WithOutputUri(const Aws::String& value) { SetOutputUri(value); return *this;} /** *

An output URI for the run.

*/ inline StartRunRequest& WithOutputUri(Aws::String&& value) { SetOutputUri(std::move(value)); return *this;} /** *

An output URI for the run.

*/ inline StartRunRequest& WithOutputUri(const char* value) { SetOutputUri(value); return *this;} /** *

A log level for the run.

*/ inline const RunLogLevel& GetLogLevel() const{ return m_logLevel; } /** *

A log level for the run.

*/ inline bool LogLevelHasBeenSet() const { return m_logLevelHasBeenSet; } /** *

A log level for the run.

*/ inline void SetLogLevel(const RunLogLevel& value) { m_logLevelHasBeenSet = true; m_logLevel = value; } /** *

A log level for the run.

*/ inline void SetLogLevel(RunLogLevel&& value) { m_logLevelHasBeenSet = true; m_logLevel = std::move(value); } /** *

A log level for the run.

*/ inline StartRunRequest& WithLogLevel(const RunLogLevel& value) { SetLogLevel(value); return *this;} /** *

A log level for the run.

*/ inline StartRunRequest& WithLogLevel(RunLogLevel&& value) { SetLogLevel(std::move(value)); return *this;} /** *

Tags for the run.

*/ inline const Aws::Map& GetTags() const{ return m_tags; } /** *

Tags for the run.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Tags for the run.

*/ inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

Tags for the run.

*/ inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

Tags for the run.

*/ inline StartRunRequest& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** *

Tags for the run.

*/ inline StartRunRequest& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** *

Tags for the run.

*/ inline StartRunRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

Tags for the run.

*/ inline StartRunRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

Tags for the run.

*/ inline StartRunRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

Tags for the run.

*/ inline StartRunRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

Tags for the run.

*/ inline StartRunRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

Tags for the run.

*/ inline StartRunRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

Tags for the run.

*/ inline StartRunRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

To ensure that requests don't run multiple times, specify a unique ID for * each request.

*/ inline const Aws::String& GetRequestId() const{ return m_requestId; } /** *

To ensure that requests don't run multiple times, specify a unique ID for * each request.

*/ inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; } /** *

To ensure that requests don't run multiple times, specify a unique ID for * each request.

*/ inline void SetRequestId(const Aws::String& value) { m_requestIdHasBeenSet = true; m_requestId = value; } /** *

To ensure that requests don't run multiple times, specify a unique ID for * each request.

*/ inline void SetRequestId(Aws::String&& value) { m_requestIdHasBeenSet = true; m_requestId = std::move(value); } /** *

To ensure that requests don't run multiple times, specify a unique ID for * each request.

*/ inline void SetRequestId(const char* value) { m_requestIdHasBeenSet = true; m_requestId.assign(value); } /** *

To ensure that requests don't run multiple times, specify a unique ID for * each request.

*/ inline StartRunRequest& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} /** *

To ensure that requests don't run multiple times, specify a unique ID for * each request.

*/ inline StartRunRequest& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} /** *

To ensure that requests don't run multiple times, specify a unique ID for * each request.

*/ inline StartRunRequest& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_workflowId; bool m_workflowIdHasBeenSet = false; WorkflowType m_workflowType; bool m_workflowTypeHasBeenSet = false; Aws::String m_runId; bool m_runIdHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_runGroupId; bool m_runGroupIdHasBeenSet = false; int m_priority; bool m_priorityHasBeenSet = false; Aws::Utils::Document m_parameters; bool m_parametersHasBeenSet = false; int m_storageCapacity; bool m_storageCapacityHasBeenSet = false; Aws::String m_outputUri; bool m_outputUriHasBeenSet = false; RunLogLevel m_logLevel; bool m_logLevelHasBeenSet = false; Aws::Map m_tags; bool m_tagsHasBeenSet = false; Aws::String m_requestId; bool m_requestIdHasBeenSet = false; }; } // namespace Model } // namespace Omics } // namespace Aws