ontime-pm
v1.0.0
Published
Ontime Process Manager
Downloads
6
Readme
The library is used to manage and control some processes which you are able to run in the browser or NodeJS. There is sometimes need to split a complicated process into small pieces of code. It means that you can create simple tasks and combine them into the one process.
Process manager - allows you to controll your processes.
Process - allows you to controll tasks.
Task - simple iteration.
yarn add ontime-pm
// or
npm install ontime-pm
// index.ts
import { ProcessManager, Process, Task } from 'ontime-pm';
// Create instance of process manager
const processManager: ProcessManager = new ProcessManager('user');
// Create Tasks classes
class Task1 extends Task {
async run() {
console.log('Task 1. Do something...');
}
async pause() {}
async resume() {}
async cancel() {}
}
class Task2 extends Task {
async run() {
console.log('Task 2. Do something...');
}
async pause() {}
async resume() {}
async cancel() {}
}
class Task3 extends Task {
async run() {
console.log('Task 3. Do something...');
}
async pause() {}
async resume() {}
async cancel() {}
}
// Create Custom Process class
class CustomProcess extends Process<{}, []> {
public get name(): string { return 'test'; }
public get tasks(): any[] { return [Task1, Task2, Task3]; }
}
// Register custom process inside process manager
pm.register('test', CustomProcess);
// Create a new instance of custom process
const proc: CustomProcess = await pm.create('test');
// subscribe on all events
proc.on('*', (...args: any[]) => console.log(...args));
// run custom process
proc.run();
- processName - process name
- options - process variables
- restoreId. Optional. Using for restore process context.
- processId - process ID
- processId - process ID
- V generic of variables
Others API depends on the implementation