/*
* 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 elasticmapreduce-2009-03-31.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.ElasticMapReduce.Model
{
///
/// A notebook execution. An execution is a specific instance that an Amazon EMR Notebook
/// is run using the StartNotebookExecution
action.
///
public partial class NotebookExecution
{
private string _arn;
private string _editorId;
private DateTime? _endTime;
private Dictionary _environmentVariables = new Dictionary();
private ExecutionEngineConfig _executionEngine;
private string _lastStateChangeReason;
private string _notebookExecutionId;
private string _notebookExecutionName;
private string _notebookInstanceSecurityGroupId;
private string _notebookParams;
private NotebookS3LocationForOutput _notebookS3Location;
private OutputNotebookFormat _outputNotebookFormat;
private OutputNotebookS3LocationForOutput _outputNotebookS3Location;
private string _outputNotebookURI;
private DateTime? _startTime;
private NotebookExecutionStatus _status;
private List _tags = new List();
///
/// Gets and sets the property Arn.
///
/// The Amazon Resource Name (ARN) of the notebook execution.
///
///
[AWSProperty(Min=0, Max=256)]
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 EditorId.
///
/// The unique identifier of the Amazon EMR Notebook that is used for the notebook execution.
///
///
[AWSProperty(Min=0, Max=256)]
public string EditorId
{
get { return this._editorId; }
set { this._editorId = value; }
}
// Check to see if EditorId property is set
internal bool IsSetEditorId()
{
return this._editorId != null;
}
///
/// Gets and sets the property EndTime.
///
/// The timestamp when notebook execution ended.
///
///
public DateTime EndTime
{
get { return this._endTime.GetValueOrDefault(); }
set { this._endTime = value; }
}
// Check to see if EndTime property is set
internal bool IsSetEndTime()
{
return this._endTime.HasValue;
}
///
/// Gets and sets the property EnvironmentVariables.
///
/// The environment variables associated with the notebook execution.
///
///
public Dictionary EnvironmentVariables
{
get { return this._environmentVariables; }
set { this._environmentVariables = value; }
}
// Check to see if EnvironmentVariables property is set
internal bool IsSetEnvironmentVariables()
{
return this._environmentVariables != null && this._environmentVariables.Count > 0;
}
///
/// Gets and sets the property ExecutionEngine.
///
/// The execution engine, such as an Amazon EMR cluster, used to run the Amazon EMR notebook
/// and perform the notebook execution.
///
///
public ExecutionEngineConfig ExecutionEngine
{
get { return this._executionEngine; }
set { this._executionEngine = value; }
}
// Check to see if ExecutionEngine property is set
internal bool IsSetExecutionEngine()
{
return this._executionEngine != null;
}
///
/// Gets and sets the property LastStateChangeReason.
///
/// The reason for the latest status change of the notebook execution.
///
///
[AWSProperty(Min=0, Max=10280)]
public string LastStateChangeReason
{
get { return this._lastStateChangeReason; }
set { this._lastStateChangeReason = value; }
}
// Check to see if LastStateChangeReason property is set
internal bool IsSetLastStateChangeReason()
{
return this._lastStateChangeReason != null;
}
///
/// Gets and sets the property NotebookExecutionId.
///
/// The unique identifier of a notebook execution.
///
///
[AWSProperty(Min=0, Max=256)]
public string NotebookExecutionId
{
get { return this._notebookExecutionId; }
set { this._notebookExecutionId = value; }
}
// Check to see if NotebookExecutionId property is set
internal bool IsSetNotebookExecutionId()
{
return this._notebookExecutionId != null;
}
///
/// Gets and sets the property NotebookExecutionName.
///
/// A name for the notebook execution.
///
///
[AWSProperty(Min=0, Max=256)]
public string NotebookExecutionName
{
get { return this._notebookExecutionName; }
set { this._notebookExecutionName = value; }
}
// Check to see if NotebookExecutionName property is set
internal bool IsSetNotebookExecutionName()
{
return this._notebookExecutionName != null;
}
///
/// Gets and sets the property NotebookInstanceSecurityGroupId.
///
/// The unique identifier of the Amazon EC2 security group associated with the Amazon
/// EMR Notebook instance. For more information see Specifying
/// Amazon EC2 Security Groups for Amazon EMR Notebooks in the Amazon EMR Management
/// Guide.
///
///
[AWSProperty(Min=0, Max=256)]
public string NotebookInstanceSecurityGroupId
{
get { return this._notebookInstanceSecurityGroupId; }
set { this._notebookInstanceSecurityGroupId = value; }
}
// Check to see if NotebookInstanceSecurityGroupId property is set
internal bool IsSetNotebookInstanceSecurityGroupId()
{
return this._notebookInstanceSecurityGroupId != null;
}
///
/// Gets and sets the property NotebookParams.
///
/// Input parameters in JSON format passed to the Amazon EMR Notebook at runtime for execution.
///
///
[AWSProperty(Min=0, Max=10280)]
public string NotebookParams
{
get { return this._notebookParams; }
set { this._notebookParams = value; }
}
// Check to see if NotebookParams property is set
internal bool IsSetNotebookParams()
{
return this._notebookParams != null;
}
///
/// Gets and sets the property NotebookS3Location.
///
/// The Amazon S3 location that stores the notebook execution input.
///
///
public NotebookS3LocationForOutput NotebookS3Location
{
get { return this._notebookS3Location; }
set { this._notebookS3Location = value; }
}
// Check to see if NotebookS3Location property is set
internal bool IsSetNotebookS3Location()
{
return this._notebookS3Location != null;
}
///
/// Gets and sets the property OutputNotebookFormat.
///
/// The output format for the notebook execution.
///
///
public OutputNotebookFormat OutputNotebookFormat
{
get { return this._outputNotebookFormat; }
set { this._outputNotebookFormat = value; }
}
// Check to see if OutputNotebookFormat property is set
internal bool IsSetOutputNotebookFormat()
{
return this._outputNotebookFormat != null;
}
///
/// Gets and sets the property OutputNotebookS3Location.
///
/// The Amazon S3 location for the notebook execution output.
///
///
public OutputNotebookS3LocationForOutput OutputNotebookS3Location
{
get { return this._outputNotebookS3Location; }
set { this._outputNotebookS3Location = value; }
}
// Check to see if OutputNotebookS3Location property is set
internal bool IsSetOutputNotebookS3Location()
{
return this._outputNotebookS3Location != null;
}
///
/// Gets and sets the property OutputNotebookURI.
///
/// The location of the notebook execution's output file in Amazon S3.
///
///
[AWSProperty(Min=0, Max=10280)]
public string OutputNotebookURI
{
get { return this._outputNotebookURI; }
set { this._outputNotebookURI = value; }
}
// Check to see if OutputNotebookURI property is set
internal bool IsSetOutputNotebookURI()
{
return this._outputNotebookURI != null;
}
///
/// Gets and sets the property StartTime.
///
/// The timestamp when notebook execution started.
///
///
public DateTime StartTime
{
get { return this._startTime.GetValueOrDefault(); }
set { this._startTime = value; }
}
// Check to see if StartTime property is set
internal bool IsSetStartTime()
{
return this._startTime.HasValue;
}
///
/// Gets and sets the property Status.
///
/// The status of the notebook execution.
///
/// -
///
///
START_PENDING
indicates that the cluster has received the execution
/// request but execution has not begun.
///
/// -
///
///
STARTING
indicates that the execution is starting on the cluster.
///
/// -
///
///
RUNNING
indicates that the execution is being processed by the cluster.
///
/// -
///
///
FINISHING
indicates that execution processing is in the final stages.
///
/// -
///
///
FINISHED
indicates that the execution has completed without error.
///
/// -
///
///
FAILING
indicates that the execution is failing and will not finish
/// successfully.
///
/// -
///
///
FAILED
indicates that the execution failed.
///
/// -
///
///
STOP_PENDING
indicates that the cluster has received a StopNotebookExecution
/// request and the stop is pending.
///
/// -
///
///
STOPPING
indicates that the cluster is in the process of stopping the
/// execution as a result of a StopNotebookExecution
request.
///
/// -
///
///
STOPPED
indicates that the execution stopped because of a StopNotebookExecution
/// request.
///
///
///
public NotebookExecutionStatus 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.
///
/// A list of tags associated with a notebook execution. Tags are user-defined key-value
/// pairs that consist of a required key string with a maximum of 128 characters and an
/// optional value string with a maximum of 256 characters.
///
///
public List 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;
}
}
}