Show / Hide Table of Contents

Class QJob

This class manages Jobs life cycle: logical group of tasks.

Inheritance
object
QJob
Inherited Members
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
Namespace: QarnotSDK
Assembly: QarnotSDK.dll
Syntax
public class QJob

Constructors

QJob(Connection, Guid, bool)

Create a job object given an existing Uuid.

Declaration
public QJob(Connection connection, Guid uuid, bool updateFromApi = false)
Parameters
Type Name Description
Connection connection

The inner connection object.

Guid uuid

The Uuid of an already existing job.

bool updateFromApi

Update the job from api values (if true, will call compute API to retrieve job info)

QJob(Connection, string, QPool, string, bool)

Create a new job.

Declaration
public QJob(Connection connection, string name, QPool pool = null, string shortname = null, bool UseTaskDependencies = false)
Parameters
Type Name Description
Connection connection

The inner connection object.

string name

The job name.

QPool pool

The pool we want the job to be attached to.

string shortname

The pool unique shortname.

bool UseTaskDependencies

Bool to allow use of dependencies for tasks in this job.

Fields

_api

Reference to the api connection.

Declaration
protected Connection _api
Field Value
Type Description
Connection

_uri

The job resource uri.

Declaration
protected string _uri
Field Value
Type Description
string

Properties

AutoDeleteOnCompletion

AutoDeleteOnCompletion: Field allowing the automatic deletion of the job when in a final state. Must be set before the submission.

Declaration
public bool AutoDeleteOnCompletion { get; set; }
Property Value
Type Description
bool

CompletionTimeToLive

CompletionTimeToLive: Final State Duration before deletion of the job. Must be set before the submission.

Declaration
public TimeSpan CompletionTimeToLive { get; set; }
Property Value
Type Description
TimeSpan

Connection

The inner Connection object.

Declaration
public virtual Connection Connection { get; }
Property Value
Type Description
Connection

CreationDate

The Job creation date

Declaration
public virtual DateTime CreationDate { get; }
Property Value
Type Description
DateTime

LastModified

The Job last modified date

Declaration
public virtual DateTime? LastModified { get; }
Property Value
Type Description
DateTime?

MaximumWallTime

Wall time limit for the job execution. Once this this time duration exceeded, the whole job will terminate and the tasks linked will be canceled

Declaration
public virtual TimeSpan MaximumWallTime { get; set; }
Property Value
Type Description
TimeSpan

Name

The Job name

Declaration
public virtual string Name { get; set; }
Property Value
Type Description
string

Pool

The pool the job is attached to null if the job is not attached to a pool.

Declaration
public virtual QPool Pool { get; }
Property Value
Type Description
QPool

PoolUuid

The related pool uuid

Declaration
public virtual Guid PoolUuid { get; }
Property Value
Type Description
Guid

PreviousState

Retrieve the job previous state (see QJobStates). Available only after the submission. Use UpdateStatus or UpdateStatusAsync to refresh.

Declaration
public virtual string PreviousState { get; }
Property Value
Type Description
string

PreviousStateTransitionTime

Retrieve the job previous state transition utc time (see QJobStates). Available only after the submission. Use UpdateStatus or UpdateStatusAsync to refresh.

Declaration
public virtual DateTime? PreviousStateTransitionTime { get; }
Property Value
Type Description
DateTime?

Shortname

The Job unique shortname

Declaration
public virtual string Shortname { get; set; }
Property Value
Type Description
string

State

Retrieve the job state (see QJobStates). Available only after the submission. Use UpdateStatus or UpdateStatusAsync to refresh.

Declaration
public virtual string State { get; }
Property Value
Type Description
string

StateTransitionTime

Retrieve the job state transition utc time (see QJobStates). Available only after the submission. Use UpdateStatus or UpdateStatusAsync to refresh.

Declaration
public virtual DateTime? StateTransitionTime { get; }
Property Value
Type Description
DateTime?

Tags

The custom job tag list.

Declaration
public virtual List<string> Tags { get; }
Property Value
Type Description
List<string>

UseDependencies

Boolean to indicate if the job use dependency behaviour. Need to be true to allow the use of dependencies for tasks in this job.

Declaration
public virtual bool UseDependencies { get; set; }
Property Value
Type Description
bool

Uuid

The job unique identifier. The Uuid is generated by the Api when the job is created.

Declaration
public virtual Guid Uuid { get; }
Property Value
Type Description
Guid

Methods

Delete(bool, CancellationToken)

Delete the job. If the job is active, the job is terminated and deleted.

Declaration
[Obsolete("Delete is deprecated, please use DeleteAsync instead.")]
public virtual void Delete(bool force = false, CancellationToken cancellationToken = default)
Parameters
Type Name Description
bool force

Optional boolean to force inner tasks to be deleted.

CancellationToken cancellationToken

Optional token to cancel the request.

DeleteAsync(bool, CancellationToken)

Delete the job. If the job is active, the job is terminated and deleted.

Declaration
public virtual Task DeleteAsync(bool force = false, CancellationToken cancellationToken = default)
Parameters
Type Name Description
bool force

Optional boolean to force inner tasks to be deleted.

CancellationToken cancellationToken

Optional token to cancel the request.

Returns
Type Description
Task

SetTags(params string[])

Set the a list of tags for the job.

Declaration
public virtual void SetTags(params string[] tags)
Parameters
Type Name Description
string[] tags

Job tags.

Submit(CancellationToken)

Submit this job.

Declaration
[Obsolete("Submit is deprecated, please use SubmitAsync instead.")]
public virtual void Submit(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken

Optional token to cancel the request.

SubmitAsync(CancellationToken)

Submit this job.

Declaration
public virtual Task SubmitAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken

Optional token to cancel the request.

Returns
Type Description
Task

Terminate(CancellationToken)

Terminate an active job. (will cancel all remaining tasks)

Declaration
[Obsolete("Terminate is deprecated, please use TerminateAsync instead.")]
public virtual void Terminate(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken

Optional token to cancel the request.

TerminateAsync(CancellationToken)

Terminate an active job. (will cancel all remaining tasks)

Declaration
public virtual Task TerminateAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken

Optional token to cancel the request.

Returns
Type Description
Task

UpdateStatus(CancellationToken)

Update this job.

Declaration
[Obsolete("UpdateStatus is deprecated, please use UpdateStatusAsync instead.")]
public virtual void UpdateStatus(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken

Optional token to cancel the request.

UpdateStatusAsync(CancellationToken)

Update this job.

Declaration
public virtual Task UpdateStatusAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken

Optional token to cancel the request.

Returns
Type Description
Task
In this article
Back to top Generated by DocFX