/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the omics-2022-11-28.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Auth;
namespace Amazon.Omics.Model
{
///
/// Container for the parameters to the CreateWorkflow operation.
/// Creates a workflow.
///
public partial class CreateWorkflowRequest : AmazonOmicsRequest
{
private Accelerators _accelerators;
private string _definitionUri;
private MemoryStream _definitionZip;
private string _description;
private WorkflowEngine _engine;
private string _main;
private string _name;
private Dictionary _parameterTemplate = new Dictionary();
private string _requestId;
private int? _storageCapacity;
private Dictionary _tags = new Dictionary();
///
/// Gets and sets the property Accelerators.
///
/// The computational accelerator specified to run the workflow.
///
///
[AWSProperty(Min=1, Max=64)]
public Accelerators Accelerators
{
get { return this._accelerators; }
set { this._accelerators = value; }
}
// Check to see if Accelerators property is set
internal bool IsSetAccelerators()
{
return this._accelerators != null;
}
///
/// Gets and sets the property DefinitionUri.
///
/// The URI of a definition for the workflow.
///
///
[AWSProperty(Min=1, Max=256)]
public string DefinitionUri
{
get { return this._definitionUri; }
set { this._definitionUri = value; }
}
// Check to see if DefinitionUri property is set
internal bool IsSetDefinitionUri()
{
return this._definitionUri != null;
}
///
/// Gets and sets the property DefinitionZip.
///
/// A ZIP archive for the workflow.
///
///
public MemoryStream DefinitionZip
{
get { return this._definitionZip; }
set { this._definitionZip = value; }
}
// Check to see if DefinitionZip property is set
internal bool IsSetDefinitionZip()
{
return this._definitionZip != null;
}
///
/// Gets and sets the property Description.
///
/// A description for the workflow.
///
///
[AWSProperty(Min=1, Max=256)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property Engine.
///
/// An engine for the workflow.
///
///
[AWSProperty(Min=1, Max=64)]
public WorkflowEngine Engine
{
get { return this._engine; }
set { this._engine = value; }
}
// Check to see if Engine property is set
internal bool IsSetEngine()
{
return this._engine != null;
}
///
/// Gets and sets the property Main.
///
/// The path of the main definition file for the workflow.
///
///
[AWSProperty(Min=1, Max=128)]
public string Main
{
get { return this._main; }
set { this._main = value; }
}
// Check to see if Main property is set
internal bool IsSetMain()
{
return this._main != null;
}
///
/// Gets and sets the property Name.
///
/// A name for the workflow.
///
///
[AWSProperty(Min=1, Max=128)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property ParameterTemplate.
///
/// A parameter template for the workflow.
///
///
[AWSProperty(Min=1, Max=1000)]
public Dictionary ParameterTemplate
{
get { return this._parameterTemplate; }
set { this._parameterTemplate = value; }
}
// Check to see if ParameterTemplate property is set
internal bool IsSetParameterTemplate()
{
return this._parameterTemplate != null && this._parameterTemplate.Count > 0;
}
///
/// Gets and sets the property RequestId.
///
/// To ensure that requests don't run multiple times, specify a unique ID for each request.
///
///
[AWSProperty(Min=1, Max=128)]
public string RequestId
{
get { return this._requestId; }
set { this._requestId = value; }
}
// Check to see if RequestId property is set
internal bool IsSetRequestId()
{
return this._requestId != null;
}
///
/// Gets and sets the property StorageCapacity.
///
/// A storage capacity for the workflow in gigabytes.
///
///
[AWSProperty(Min=0, Max=100000)]
public int StorageCapacity
{
get { return this._storageCapacity.GetValueOrDefault(); }
set { this._storageCapacity = value; }
}
// Check to see if StorageCapacity property is set
internal bool IsSetStorageCapacity()
{
return this._storageCapacity.HasValue;
}
///
/// Gets and sets the property Tags.
///
/// Tags for the workflow.
///
///
public Dictionary Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
///
/// Get the signer to use for this request.
///
/// A signer for this request.
override protected AbstractAWSSigner CreateSigner()
{
return new AWS4Signer();
}
}
}