/* * 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 robomaker-2018-06-29.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; namespace Amazon.RoboMaker.Model { /// /// Container for the parameters to the CreateSimulationJob operation. /// Creates a simulation job. /// /// /// /// After 90 days, simulation jobs expire and will be deleted. They will no longer be /// accessible. /// /// /// public partial class CreateSimulationJobRequest : AmazonRoboMakerRequest { private string _clientRequestToken; private Compute _compute; private List _dataSources = new List(); private FailureBehavior _failureBehavior; private string _iamRole; private LoggingConfig _loggingConfig; private long? _maxJobDurationInSeconds; private OutputLocation _outputLocation; private List _robotApplications = new List(); private List _simulationApplications = new List(); private Dictionary _tags = new Dictionary(); private VPCConfig _vpcConfig; /// /// Gets and sets the property ClientRequestToken. /// /// Unique, case-sensitive identifier that you provide to ensure the idempotency of the /// request. /// /// [AWSProperty(Min=1, Max=64)] public string ClientRequestToken { get { return this._clientRequestToken; } set { this._clientRequestToken = value; } } // Check to see if ClientRequestToken property is set internal bool IsSetClientRequestToken() { return this._clientRequestToken != null; } /// /// Gets and sets the property Compute. /// /// Compute information for the simulation job. /// /// public Compute Compute { get { return this._compute; } set { this._compute = value; } } // Check to see if Compute property is set internal bool IsSetCompute() { return this._compute != null; } /// /// Gets and sets the property DataSources. /// /// Specify data sources to mount read-only files from S3 into your simulation. These /// files are available under /opt/robomaker/datasources/data_source_name. /// /// /// /// /// There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig /// objects. /// /// /// [AWSProperty(Min=1, Max=6)] public List DataSources { get { return this._dataSources; } set { this._dataSources = value; } } // Check to see if DataSources property is set internal bool IsSetDataSources() { return this._dataSources != null && this._dataSources.Count > 0; } /// /// Gets and sets the property FailureBehavior. /// /// The failure behavior the simulation job. /// ///
Continue
/// /// Leaves the instance running for its maximum timeout duration after a 4XX /// error code. /// ///
Fail
/// /// Stop the simulation job and terminate the instance. /// ///
///
public FailureBehavior FailureBehavior { get { return this._failureBehavior; } set { this._failureBehavior = value; } } // Check to see if FailureBehavior property is set internal bool IsSetFailureBehavior() { return this._failureBehavior != null; } /// /// Gets and sets the property IamRole. /// /// The IAM role name that allows the simulation instance to call the AWS APIs that are /// specified in its associated policies on your behalf. This is how credentials are passed /// in to your simulation job. /// /// [AWSProperty(Required=true, Min=1, Max=255)] public string IamRole { get { return this._iamRole; } set { this._iamRole = value; } } // Check to see if IamRole property is set internal bool IsSetIamRole() { return this._iamRole != null; } /// /// Gets and sets the property LoggingConfig. /// /// The logging configuration. /// /// public LoggingConfig LoggingConfig { get { return this._loggingConfig; } set { this._loggingConfig = value; } } // Check to see if LoggingConfig property is set internal bool IsSetLoggingConfig() { return this._loggingConfig != null; } /// /// Gets and sets the property MaxJobDurationInSeconds. /// /// The maximum simulation job duration in seconds (up to 14 days or 1,209,600 seconds. /// When maxJobDurationInSeconds is reached, the simulation job will status /// will transition to Completed. /// /// [AWSProperty(Required=true)] public long MaxJobDurationInSeconds { get { return this._maxJobDurationInSeconds.GetValueOrDefault(); } set { this._maxJobDurationInSeconds = value; } } // Check to see if MaxJobDurationInSeconds property is set internal bool IsSetMaxJobDurationInSeconds() { return this._maxJobDurationInSeconds.HasValue; } /// /// Gets and sets the property OutputLocation. /// /// Location for output files generated by the simulation job. /// /// public OutputLocation OutputLocation { get { return this._outputLocation; } set { this._outputLocation = value; } } // Check to see if OutputLocation property is set internal bool IsSetOutputLocation() { return this._outputLocation != null; } /// /// Gets and sets the property RobotApplications. /// /// The robot application to use in the simulation job. /// /// [AWSProperty(Min=1, Max=1)] public List RobotApplications { get { return this._robotApplications; } set { this._robotApplications = value; } } // Check to see if RobotApplications property is set internal bool IsSetRobotApplications() { return this._robotApplications != null && this._robotApplications.Count > 0; } /// /// Gets and sets the property SimulationApplications. /// /// The simulation application to use in the simulation job. /// /// [AWSProperty(Min=1, Max=1)] public List SimulationApplications { get { return this._simulationApplications; } set { this._simulationApplications = value; } } // Check to see if SimulationApplications property is set internal bool IsSetSimulationApplications() { return this._simulationApplications != null && this._simulationApplications.Count > 0; } /// /// Gets and sets the property Tags. /// /// A map that contains tag keys and tag values that are attached to the simulation job. /// /// [AWSProperty(Min=0, Max=50)] 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; } /// /// Gets and sets the property VpcConfig. /// /// If your simulation job accesses resources in a VPC, you provide this parameter identifying /// the list of security group IDs and subnet IDs. These must belong to the same VPC. /// You must provide at least one security group and one subnet ID. /// /// public VPCConfig VpcConfig { get { return this._vpcConfig; } set { this._vpcConfig = value; } } // Check to see if VpcConfig property is set internal bool IsSetVpcConfig() { return this._vpcConfig != null; } } }