/*
* 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 batch-2016-08-10.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.Batch.Model
{
///
/// Container for the parameters to the ListJobs operation.
/// Returns a list of Batch jobs.
///
///
///
/// You must specify only one of the following items:
///
/// -
///
/// A job queue ID to return a list of jobs in that job queue
///
///
-
///
/// A multi-node parallel job ID to return a list of nodes for that job
///
///
-
///
/// An array job ID to return a list of the children for that job
///
///
///
/// You can filter the results by job status with the jobStatus
parameter.
/// If you don't specify a status, only RUNNING
jobs are returned.
///
///
public partial class ListJobsRequest : AmazonBatchRequest
{
private string _arrayJobId;
private List _filters = new List();
private string _jobQueue;
private JobStatus _jobStatus;
private int? _maxResults;
private string _multiNodeJobId;
private string _nextToken;
///
/// Gets and sets the property ArrayJobId.
///
/// The job ID for an array job. Specifying an array job ID with this parameter lists
/// all child jobs from within the specified array.
///
///
public string ArrayJobId
{
get { return this._arrayJobId; }
set { this._arrayJobId = value; }
}
// Check to see if ArrayJobId property is set
internal bool IsSetArrayJobId()
{
return this._arrayJobId != null;
}
///
/// Gets and sets the property Filters.
///
/// The filter to apply to the query. Only one filter can be used at a time. When the
/// filter is used, jobStatus
is ignored. The filter doesn't apply to child
/// jobs in an array or multi-node parallel (MNP) jobs. The results are sorted by the
/// createdAt
field, with the most recent jobs being first.
///
/// - JOB_NAME
-
///
/// The value of the filter is a case-insensitive match for the job name. If the value
/// ends with an asterisk (*), the filter matches any job name that begins with the string
/// before the '*'. This corresponds to the
jobName
value. For example, test1
/// matches both Test1
and test1
, and test1*
matches
/// both test1
and Test10
. When the JOB_NAME
filter
/// is used, the results are grouped by the job name and version.
///
/// - JOB_DEFINITION
-
///
/// The value for the filter is the name or Amazon Resource Name (ARN) of the job definition.
/// This corresponds to the
jobDefinition
value. The value is case sensitive.
/// When the value for the filter is the job definition name, the results include all
/// the jobs that used any revision of that job definition name. If the value ends with
/// an asterisk (*), the filter matches any job definition name that begins with the string
/// before the '*'. For example, jd1
matches only jd1
, and jd1*
/// matches both jd1
and jd1A
. The version of the job definition
/// that's used doesn't affect the sort order. When the JOB_DEFINITION
filter
/// is used and the ARN is used (which is in the form arn:${Partition}:batch:${Region}:${Account}:job-definition/${JobDefinitionName}:${Revision}
),
/// the results include jobs that used the specified revision of the job definition. Asterisk
/// (*) isn't supported when the ARN is used.
///
/// - BEFORE_CREATED_AT
-
///
/// The value for the filter is the time that's before the job was created. This corresponds
/// to the
createdAt
value. The value is a string representation of the number
/// of milliseconds since 00:00:00 UTC (midnight) on January 1, 1970.
///
/// - AFTER_CREATED_AT
-
///
/// The value for the filter is the time that's after the job was created. This corresponds
/// to the
createdAt
value. The value is a string representation of the number
/// of milliseconds since 00:00:00 UTC (midnight) on January 1, 1970.
///
///
///
public List Filters
{
get { return this._filters; }
set { this._filters = value; }
}
// Check to see if Filters property is set
internal bool IsSetFilters()
{
return this._filters != null && this._filters.Count > 0;
}
///
/// Gets and sets the property JobQueue.
///
/// The name or full Amazon Resource Name (ARN) of the job queue used to list jobs.
///
///
public string JobQueue
{
get { return this._jobQueue; }
set { this._jobQueue = value; }
}
// Check to see if JobQueue property is set
internal bool IsSetJobQueue()
{
return this._jobQueue != null;
}
///
/// Gets and sets the property JobStatus.
///
/// The job status used to filter jobs in the specified queue. If the filters
/// parameter is specified, the jobStatus
parameter is ignored and jobs with
/// any status are returned. If you don't specify a status, only RUNNING
/// jobs are returned.
///
///
public JobStatus JobStatus
{
get { return this._jobStatus; }
set { this._jobStatus = value; }
}
// Check to see if JobStatus property is set
internal bool IsSetJobStatus()
{
return this._jobStatus != null;
}
///
/// Gets and sets the property MaxResults.
///
/// The maximum number of results returned by ListJobs
in paginated output.
/// When this parameter is used, ListJobs
only returns maxResults
/// results in a single page and a nextToken
response element. The remaining
/// results of the initial request can be seen by sending another ListJobs
/// request with the returned nextToken
value. This value can be between
/// 1 and 100. If this parameter isn't used, then ListJobs
returns up to
/// 100 results and a nextToken
value if applicable.
///
///
public int MaxResults
{
get { return this._maxResults.GetValueOrDefault(); }
set { this._maxResults = value; }
}
// Check to see if MaxResults property is set
internal bool IsSetMaxResults()
{
return this._maxResults.HasValue;
}
///
/// Gets and sets the property MultiNodeJobId.
///
/// The job ID for a multi-node parallel job. Specifying a multi-node parallel job ID
/// with this parameter lists all nodes that are associated with the specified job.
///
///
public string MultiNodeJobId
{
get { return this._multiNodeJobId; }
set { this._multiNodeJobId = value; }
}
// Check to see if MultiNodeJobId property is set
internal bool IsSetMultiNodeJobId()
{
return this._multiNodeJobId != null;
}
///
/// Gets and sets the property NextToken.
///
/// The nextToken
value returned from a previous paginated ListJobs
/// request where maxResults
was used and the results exceeded the value
/// of that parameter. Pagination continues from the end of the previous results that
/// returned the nextToken
value. This value is null
when there
/// are no more results to return.
///
///
///
/// Treat this token as an opaque identifier that's only used to retrieve the next items
/// in a list and not for other programmatic purposes.
///
///
///
public string NextToken
{
get { return this._nextToken; }
set { this._nextToken = value; }
}
// Check to see if NextToken property is set
internal bool IsSetNextToken()
{
return this._nextToken != null;
}
}
}