/*
* 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 glue-2017-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.Glue.Model
{
///
/// Defines an action to be initiated by a trigger.
///
public partial class Action
{
private Dictionary _arguments = new Dictionary();
private string _crawlerName;
private string _jobName;
private NotificationProperty _notificationProperty;
private string _securityConfiguration;
private int? _timeout;
///
/// Gets and sets the property Arguments.
///
/// The job arguments used when this trigger fires. For this job run, they replace the
/// default arguments set in the job definition itself.
///
///
///
/// You can specify arguments here that your own job-execution script consumes, as well
/// as arguments that Glue itself consumes.
///
///
///
/// For information about how to specify and consume your own Job arguments, see the Calling
/// Glue APIs in Python topic in the developer guide.
///
///
///
/// For information about the key-value pairs that Glue consumes to set up your job, see
/// the Special
/// Parameters Used by Glue topic in the developer guide.
///
///
public Dictionary Arguments
{
get { return this._arguments; }
set { this._arguments = value; }
}
// Check to see if Arguments property is set
internal bool IsSetArguments()
{
return this._arguments != null && this._arguments.Count > 0;
}
///
/// Gets and sets the property CrawlerName.
///
/// The name of the crawler to be used with this action.
///
///
[AWSProperty(Min=1, Max=255)]
public string CrawlerName
{
get { return this._crawlerName; }
set { this._crawlerName = value; }
}
// Check to see if CrawlerName property is set
internal bool IsSetCrawlerName()
{
return this._crawlerName != null;
}
///
/// Gets and sets the property JobName.
///
/// The name of a job to be run.
///
///
[AWSProperty(Min=1, Max=255)]
public string JobName
{
get { return this._jobName; }
set { this._jobName = value; }
}
// Check to see if JobName property is set
internal bool IsSetJobName()
{
return this._jobName != null;
}
///
/// Gets and sets the property NotificationProperty.
///
/// Specifies configuration properties of a job run notification.
///
///
public NotificationProperty NotificationProperty
{
get { return this._notificationProperty; }
set { this._notificationProperty = value; }
}
// Check to see if NotificationProperty property is set
internal bool IsSetNotificationProperty()
{
return this._notificationProperty != null;
}
///
/// Gets and sets the property SecurityConfiguration.
///
/// The name of the SecurityConfiguration
structure to be used with this
/// action.
///
///
[AWSProperty(Min=1, Max=255)]
public string SecurityConfiguration
{
get { return this._securityConfiguration; }
set { this._securityConfiguration = value; }
}
// Check to see if SecurityConfiguration property is set
internal bool IsSetSecurityConfiguration()
{
return this._securityConfiguration != null;
}
///
/// Gets and sets the property Timeout.
///
/// The JobRun
timeout in minutes. This is the maximum time that a job run
/// can consume resources before it is terminated and enters TIMEOUT
status.
/// The default is 2,880 minutes (48 hours). This overrides the timeout value set in the
/// parent job.
///
///
[AWSProperty(Min=1)]
public int Timeout
{
get { return this._timeout.GetValueOrDefault(); }
set { this._timeout = value; }
}
// Check to see if Timeout property is set
internal bool IsSetTimeout()
{
return this._timeout.HasValue;
}
}
}