[API](/solutions/geotoolkit/geotoolkit_js/apis/readme) / [geotoolkit](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit) / [util](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.util) / [taskscheduler](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.util.taskscheduler) / ITask

# Class: ITask

[util](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.util).[taskscheduler](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.util.taskscheduler).ITask

Define an interface for Task

**`Interface`**

## Table of contents

Constructors
- [new ITask()](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.util.taskscheduler.itask.md#new itask())


Methods
| [getCancel](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.taskscheduler.itask#getcancel) | [getId](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.taskscheduler.itask#getid) | [run](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.taskscheduler.itask#run) |
|  --- | --- | --- |
| [toPromise](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.taskscheduler.itask#topromise) |


## Contents

Constructors
#### new ITask()

• **new ITask**()

Methods
#### getCancel

▸ `Abstract` **getCancel**(): [`Cancel`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.cancel.cancel)

Return object to cancel task execution

#### Returns

[`Cancel`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.cancel.cancel)

#### getId

▸ `Abstract` **getId**(): `number`

Returns task id

#### Returns

`number`

#### run

▸ `Abstract` **run**(`success`, `fail`): `void`

Run the task

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `success` | (`task`: [`ITask`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.taskscheduler.itask)) => `void` | a callback function to be call than task is competed |
| `fail` | (`task`: [`ITask`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.taskscheduler.itask)) => `void` | a callback function to be call than task is fail |


#### Returns

`void`

#### toPromise

▸ `Abstract` **toPromise**(): `Promise`<`any`&gt;

Creates promise for the current task

#### Returns

`Promise`<`any`&gt;

a promise