/*
* 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
{
///
/// This is the response object from the CreateSimulationJob operation.
///
public partial class CreateSimulationJobResponse : AmazonWebServiceResponse
{
private string _arn;
private string _clientRequestToken;
private ComputeResponse _compute;
private List _dataSources = new List();
private FailureBehavior _failureBehavior;
private SimulationJobErrorCode _failureCode;
private string _iamRole;
private DateTime? _lastStartedAt;
private DateTime? _lastUpdatedAt;
private LoggingConfig _loggingConfig;
private long? _maxJobDurationInSeconds;
private OutputLocation _outputLocation;
private List _robotApplications = new List();
private List _simulationApplications = new List();
private long? _simulationTimeMillis;
private SimulationJobStatus _status;
private Dictionary _tags = new Dictionary();
private VPCConfigResponse _vpcConfig;
///
/// Gets and sets the property Arn.
///
/// The Amazon Resource Name (ARN) of the simulation job.
///
///
[AWSProperty(Min=1, Max=1224)]
public string Arn
{
get { return this._arn; }
set { this._arn = value; }
}
// Check to see if Arn property is set
internal bool IsSetArn()
{
return this._arn != null;
}
///
/// 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 ComputeResponse 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.
///
/// The data sources for the simulation job.
///
///
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 for the simulation job.
///
///
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 FailureCode.
///
/// The failure code of the simulation job if it failed:
///
/// - InternalServiceError
-
///
/// Internal service error.
///
///
- RobotApplicationCrash
-
///
/// Robot application exited abnormally.
///
///
- SimulationApplicationCrash
-
///
/// Simulation application exited abnormally.
///
///
- BadPermissionsRobotApplication
-
///
/// Robot application bundle could not be downloaded.
///
///
- BadPermissionsSimulationApplication
-
///
/// Simulation application bundle could not be downloaded.
///
///
- BadPermissionsS3Output
-
///
/// Unable to publish outputs to customer-provided S3 bucket.
///
///
- BadPermissionsCloudwatchLogs
-
///
/// Unable to publish logs to customer-provided CloudWatch Logs resource.
///
///
- SubnetIpLimitExceeded
-
///
/// Subnet IP limit exceeded.
///
///
- ENILimitExceeded
-
///
/// ENI limit exceeded.
///
///
- BadPermissionsUserCredentials
-
///
/// Unable to use the Role provided.
///
///
- InvalidBundleRobotApplication
-
///
/// Robot bundle cannot be extracted (invalid format, bundling error, or other issue).
///
///
- InvalidBundleSimulationApplication
-
///
/// Simulation bundle cannot be extracted (invalid format, bundling error, or other issue).
///
///
- RobotApplicationVersionMismatchedEtag
-
///
/// Etag for RobotApplication does not match value during version creation.
///
///
- SimulationApplicationVersionMismatchedEtag
-
///
/// Etag for SimulationApplication does not match value during version creation.
///
///
///
public SimulationJobErrorCode FailureCode
{
get { return this._failureCode; }
set { this._failureCode = value; }
}
// Check to see if FailureCode property is set
internal bool IsSetFailureCode()
{
return this._failureCode != null;
}
///
/// Gets and sets the property IamRole.
///
/// The IAM role that allows the simulation job to call the AWS APIs that are specified
/// in its associated policies on your behalf.
///
///
[AWSProperty(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 LastStartedAt.
///
/// The time, in milliseconds since the epoch, when the simulation job was last started.
///
///
public DateTime LastStartedAt
{
get { return this._lastStartedAt.GetValueOrDefault(); }
set { this._lastStartedAt = value; }
}
// Check to see if LastStartedAt property is set
internal bool IsSetLastStartedAt()
{
return this._lastStartedAt.HasValue;
}
///
/// Gets and sets the property LastUpdatedAt.
///
/// The time, in milliseconds since the epoch, when the simulation job was last updated.
///
///
public DateTime LastUpdatedAt
{
get { return this._lastUpdatedAt.GetValueOrDefault(); }
set { this._lastUpdatedAt = value; }
}
// Check to see if LastUpdatedAt property is set
internal bool IsSetLastUpdatedAt()
{
return this._lastUpdatedAt.HasValue;
}
///
/// 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.
///
///
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.
///
/// Simulation job output files location.
///
///
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 used by 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 used by 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 SimulationTimeMillis.
///
/// The simulation job execution duration in milliseconds.
///
///
public long SimulationTimeMillis
{
get { return this._simulationTimeMillis.GetValueOrDefault(); }
set { this._simulationTimeMillis = value; }
}
// Check to see if SimulationTimeMillis property is set
internal bool IsSetSimulationTimeMillis()
{
return this._simulationTimeMillis.HasValue;
}
///
/// Gets and sets the property Status.
///
/// The status of the simulation job.
///
///
public SimulationJobStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property Tags.
///
/// The list of all tags added 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.
///
/// Information about the vpc configuration.
///
///
public VPCConfigResponse VpcConfig
{
get { return this._vpcConfig; }
set { this._vpcConfig = value; }
}
// Check to see if VpcConfig property is set
internal bool IsSetVpcConfig()
{
return this._vpcConfig != null;
}
}
}