/*
* 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
{
///
/// Specification for a cluster (job flow) step.
///
public partial class StepConfig
{
private ActionOnFailure _actionOnFailure;
private HadoopJarStepConfig _hadoopJarStep;
private string _name;
///
/// Empty constructor used to set properties independently even when a simple constructor is available
///
public StepConfig() { }
///
/// Instantiates StepConfig with the parameterized properties
///
/// The name of the step.
/// The JAR file used for the step.
public StepConfig(string name, HadoopJarStepConfig hadoopJarStep)
{
_name = name;
_hadoopJarStep = hadoopJarStep;
}
///
/// Gets and sets the property ActionOnFailure.
///
/// The action to take when the step fails. Use one of the following values:
///
/// -
///
///
TERMINATE_CLUSTER
- Shuts down the cluster.
///
/// -
///
///
CANCEL_AND_WAIT
- Cancels any pending steps and returns the cluster
/// to the WAITING
state.
///
/// -
///
///
CONTINUE
- Continues to the next step in the queue.
///
/// -
///
///
TERMINATE_JOB_FLOW
- Shuts down the cluster. TERMINATE_JOB_FLOW
/// is provided for backward compatibility. We recommend using TERMINATE_CLUSTER
/// instead.
///
///
///
/// If a cluster's StepConcurrencyLevel
is greater than 1
, do
/// not use AddJobFlowSteps
to submit a step with this parameter set to CANCEL_AND_WAIT
/// or TERMINATE_CLUSTER
. The step is not submitted and the action fails
/// with a message that the ActionOnFailure
setting is not valid.
///
///
///
/// If you change a cluster's StepConcurrencyLevel
to be greater than 1 while
/// a step is running, the ActionOnFailure
parameter may not behave as you
/// expect. In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT
,
/// pending steps and the running step are not canceled; for a step that fails with this
/// parameter set to TERMINATE_CLUSTER
, the cluster does not terminate.
///
///
public ActionOnFailure ActionOnFailure
{
get { return this._actionOnFailure; }
set { this._actionOnFailure = value; }
}
// Check to see if ActionOnFailure property is set
internal bool IsSetActionOnFailure()
{
return this._actionOnFailure != null;
}
///
/// Gets and sets the property HadoopJarStep.
///
/// The JAR file used for the step.
///
///
[AWSProperty(Required=true)]
public HadoopJarStepConfig HadoopJarStep
{
get { return this._hadoopJarStep; }
set { this._hadoopJarStep = value; }
}
// Check to see if HadoopJarStep property is set
internal bool IsSetHadoopJarStep()
{
return this._hadoopJarStep != null;
}
///
/// Gets and sets the property Name.
///
/// The name of the step.
///
///
[AWSProperty(Required=true, Min=0, Max=256)]
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;
}
}
}