@sera4/essentia 3.0.11 → 3.0.13-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cache/index.d.ts +22 -0
- package/dist/cache/index.js +166 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/constants/index.d.ts +6 -0
- package/dist/constants/index.js +9 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/formatter/index.d.ts +37 -0
- package/dist/formatter/index.js +75 -0
- package/dist/formatter/index.js.map +1 -0
- package/dist/hal/index.d.ts +5 -0
- package/dist/hal/index.js +69 -0
- package/dist/hal/index.js.map +1 -0
- package/dist/health/health-logger.d.ts +9 -0
- package/dist/health/health-logger.js +34 -0
- package/dist/health/health-logger.js.map +1 -0
- package/dist/health/index.d.ts +19 -0
- package/dist/health/index.js +175 -0
- package/dist/health/index.js.map +1 -0
- package/dist/helpers/index.d.ts +1 -0
- package/dist/helpers/index.js +2 -0
- package/dist/helpers/index.js.map +1 -0
- package/dist/helpers/test-server-wrapper.d.ts +120 -0
- package/dist/helpers/test-server-wrapper.js +165 -0
- package/dist/helpers/test-server-wrapper.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/last-commit.d.ts +1 -0
- package/dist/last-commit.js.map +1 -0
- package/dist/last_commit/index.d.ts +7 -0
- package/dist/last_commit/index.js +83 -0
- package/dist/last_commit/index.js.map +1 -0
- package/dist/paginator/s4-pagination.d.ts +9 -0
- package/dist/paginator/s4-pagination.js +49 -0
- package/dist/paginator/s4-pagination.js.map +1 -0
- package/dist/paginator/sql-pagination.d.ts +27 -0
- package/dist/paginator/sql-pagination.js +166 -0
- package/dist/paginator/sql-pagination.js.map +1 -0
- package/dist/paper-trail/helpers.d.ts +11 -0
- package/dist/paper-trail/helpers.js +74 -0
- package/dist/paper-trail/helpers.js.map +1 -0
- package/dist/paper-trail/index.d.ts +13 -0
- package/dist/paper-trail/index.js +662 -0
- package/dist/paper-trail/index.js.map +1 -0
- package/dist/prompts/index.d.ts +14 -0
- package/dist/prompts/index.js +63 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/queue/index.d.ts +166 -0
- package/dist/queue/index.js +371 -0
- package/dist/queue/index.js.map +1 -0
- package/dist/queue/publisher.d.ts +31 -0
- package/dist/queue/publisher.js +84 -0
- package/dist/queue/publisher.js.map +1 -0
- package/dist/queue/queue-logger.d.ts +9 -0
- package/dist/queue/queue-logger.js +35 -0
- package/dist/queue/queue-logger.js.map +1 -0
- package/dist/queue/subscriber.d.ts +39 -0
- package/dist/queue/subscriber.js +97 -0
- package/dist/queue/subscriber.js.map +1 -0
- package/dist/safe_proxy/index.d.ts +13 -0
- package/dist/safe_proxy/index.js +54 -0
- package/dist/safe_proxy/index.js.map +1 -0
- package/dist/serializer/index.d.ts +5 -0
- package/dist/serializer/index.js +83 -0
- package/dist/serializer/index.js.map +1 -0
- package/dist/ts/logger/s4-logger.js +2 -0
- package/dist/ts/logger/s4-logger.js.map +1 -1
- package/dist/ts/queue/index.js +54 -65
- package/dist/ts/queue/index.js.map +1 -1
- package/dist/ts/task-scheduler/index.d.ts +130 -0
- package/dist/ts/task-scheduler/index.js +259 -0
- package/dist/ts/task-scheduler/index.js.map +1 -0
- package/package.json +9 -3
- package/scripts/publish.sh +46 -0
- package/package.tar.gz +0 -0
package/dist/ts/queue/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import amqp from "amqplib
|
|
1
|
+
import amqp from "amqplib";
|
|
2
2
|
import logger from "./queue-logger.js";
|
|
3
3
|
import urlParse from "url-parse";
|
|
4
4
|
import { Publisher } from "./publisher.js";
|
|
@@ -31,9 +31,14 @@ class S4Queue {
|
|
|
31
31
|
this.connectionTestChannel = null;
|
|
32
32
|
throw new Error("queue service not connected");
|
|
33
33
|
}
|
|
34
|
-
this.connectionTestChannel = this.connectionTestChannel || await this.connection.createChannel();
|
|
35
34
|
if (!this.connectionTestChannel) {
|
|
36
|
-
|
|
35
|
+
const ch = await this.connection.createChannel();
|
|
36
|
+
if (!ch) {
|
|
37
|
+
throw new Error("queue service failed to obtain a channel");
|
|
38
|
+
}
|
|
39
|
+
ch.on("error", () => { this.connectionTestChannel = null; });
|
|
40
|
+
ch.on("close", () => { this.connectionTestChannel = null; });
|
|
41
|
+
this.connectionTestChannel = ch;
|
|
37
42
|
}
|
|
38
43
|
await this.connectionTestChannel.assertExchange("--health-check--", "topic", { durable: false });
|
|
39
44
|
}
|
|
@@ -49,55 +54,48 @@ class S4Queue {
|
|
|
49
54
|
}
|
|
50
55
|
const retry = parseInt(options.retryInterval?.toString() || "10");
|
|
51
56
|
this.retry = retry || 10;
|
|
52
|
-
|
|
53
|
-
//
|
|
54
|
-
//
|
|
55
|
-
//
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
57
|
+
// We may run into issues with SNI TLS if
|
|
58
|
+
// we host with 3rd parties using our own certs.
|
|
59
|
+
// To avoid any issues, let's parse the url
|
|
60
|
+
// and provide the server name in the socket options
|
|
61
|
+
const urlParts = urlParse(options.connectionUrl);
|
|
62
|
+
const socketOptions = { servername: urlParts.hostname };
|
|
63
|
+
return new Promise((resolve) => {
|
|
64
|
+
const attempt = async () => {
|
|
65
|
+
logger.debug("Attempting connection...");
|
|
66
|
+
try {
|
|
67
|
+
const conn = await amqp.connect(options.connectionUrl, socketOptions);
|
|
68
|
+
this.connection = conn;
|
|
69
|
+
this.updatePubsAndSubsConnectionRef(conn);
|
|
70
|
+
this.connection.on("error", (err) => {
|
|
71
|
+
logger.error("connection error", err);
|
|
72
|
+
// Do not attempt to reconnect as the
|
|
73
|
+
// 'close' event will also be emitted
|
|
74
|
+
// if this error closes the connection
|
|
75
|
+
});
|
|
76
|
+
this.connection.on("close", (err) => {
|
|
77
|
+
logger.error("connection closed");
|
|
78
|
+
this.connection = null;
|
|
79
|
+
this.connectionTestChannel = null;
|
|
80
|
+
if (err) {
|
|
81
|
+
logger.error("connection closed due to error:", err);
|
|
82
|
+
logger.error("Reconnecting in", this.retry, "seconds");
|
|
83
|
+
setTimeout(attempt, this.retry * 1000);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
logger.debug("Will not re-attempt");
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
logger.debug("Connected");
|
|
90
|
+
resolve();
|
|
91
|
+
}
|
|
92
|
+
catch (err) {
|
|
66
93
|
logger.error("Error while connecting", err);
|
|
67
94
|
logger.error("Attempting again in", this.retry, "seconds");
|
|
68
|
-
|
|
69
|
-
}
|
|
70
|
-
this.connection = conn;
|
|
71
|
-
if (!this.connection) {
|
|
72
|
-
return reject(new Error("Failed to obtain connection"));
|
|
95
|
+
setTimeout(attempt, this.retry * 1000);
|
|
73
96
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
}
|
|
77
|
-
this.connection.on("error", (err) => {
|
|
78
|
-
logger.error("connection error", err);
|
|
79
|
-
// Do not attempt to reconnect as the
|
|
80
|
-
// 'close' event will also be emitted
|
|
81
|
-
// if this error closes the connection
|
|
82
|
-
});
|
|
83
|
-
this.connection.on("close", (err) => {
|
|
84
|
-
logger.error("connection closed");
|
|
85
|
-
this.connection = null;
|
|
86
|
-
if (err) {
|
|
87
|
-
logger.error("connection closed due to error:", err);
|
|
88
|
-
logger.error("Reconnecting in", this.retry, "seconds");
|
|
89
|
-
setTimeout(() => this.openConnection(options), this.retry * 1000);
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
// If there was no error, it is us who closed
|
|
93
|
-
// this connection, thus a reconnection will not
|
|
94
|
-
// be attempted.
|
|
95
|
-
logger.debug("Will not re-attempt");
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
logger.debug("Connected");
|
|
99
|
-
resolve();
|
|
100
|
-
});
|
|
97
|
+
};
|
|
98
|
+
attempt();
|
|
101
99
|
});
|
|
102
100
|
}
|
|
103
101
|
/**
|
|
@@ -106,22 +104,13 @@ class S4Queue {
|
|
|
106
104
|
* and subscribers
|
|
107
105
|
*/
|
|
108
106
|
async closeConnection() {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
this.subs = {};
|
|
119
|
-
this.pubs = {};
|
|
120
|
-
this.connection = null;
|
|
121
|
-
resolve();
|
|
122
|
-
}
|
|
123
|
-
});
|
|
124
|
-
});
|
|
107
|
+
if (!this.connection)
|
|
108
|
+
return;
|
|
109
|
+
await this.connection.close();
|
|
110
|
+
this.subs = {};
|
|
111
|
+
this.pubs = {};
|
|
112
|
+
this.connectionTestChannel = null;
|
|
113
|
+
this.connection = null;
|
|
125
114
|
}
|
|
126
115
|
/**
|
|
127
116
|
* Returns whether we have an active connection
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../ts/queue/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../ts/queue/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Task function type definition
|
|
3
|
+
*/
|
|
4
|
+
export type TaskFunction = () => Promise<void> | void;
|
|
5
|
+
/**
|
|
6
|
+
* Task options interface
|
|
7
|
+
*/
|
|
8
|
+
export interface TaskOptions {
|
|
9
|
+
scheduled?: boolean;
|
|
10
|
+
timezone?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Scheduler initialization options
|
|
14
|
+
*/
|
|
15
|
+
export interface SchedulerOptions {
|
|
16
|
+
timezone?: string;
|
|
17
|
+
scheduled?: boolean;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Task information interface
|
|
21
|
+
*/
|
|
22
|
+
export interface TaskInfo {
|
|
23
|
+
name: string;
|
|
24
|
+
cronExpression: string;
|
|
25
|
+
isRunning: boolean;
|
|
26
|
+
createdAt: Date;
|
|
27
|
+
options: TaskOptions;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* TaskScheduler - Singleton class for managing cron-based scheduled tasks
|
|
31
|
+
* Provides helper functions around node-cron for easy task scheduling
|
|
32
|
+
*/
|
|
33
|
+
export declare class TaskScheduler {
|
|
34
|
+
private static instance;
|
|
35
|
+
private readonly tasks;
|
|
36
|
+
private isInitialized;
|
|
37
|
+
private options;
|
|
38
|
+
private constructor();
|
|
39
|
+
/**
|
|
40
|
+
* Get the singleton instance of TaskScheduler
|
|
41
|
+
* @returns {TaskScheduler} The singleton instance
|
|
42
|
+
*/
|
|
43
|
+
static getInstance(): TaskScheduler;
|
|
44
|
+
/**
|
|
45
|
+
* Initialize the task scheduler
|
|
46
|
+
* @param {SchedulerOptions} options - Configuration options
|
|
47
|
+
* @param {string} options.timezone - Timezone for cron jobs (default: 'UTC')
|
|
48
|
+
* @param {boolean} options.scheduled - Whether to start tasks immediately (default: true)
|
|
49
|
+
*/
|
|
50
|
+
init(options?: SchedulerOptions): void;
|
|
51
|
+
/**
|
|
52
|
+
* Add a scheduled task
|
|
53
|
+
* @param {string} name - Unique name for the task
|
|
54
|
+
* @param {string} cronExpression - Cron expression (e.g., '0 0 * * *' for daily at midnight)
|
|
55
|
+
* @param {TaskFunction} taskFunction - Function to execute
|
|
56
|
+
* @param {TaskOptions} options - Additional options
|
|
57
|
+
* @param {boolean} options.scheduled - Whether to start the task immediately (default: true)
|
|
58
|
+
* @param {string} options.timezone - Timezone override for this task
|
|
59
|
+
* @returns {boolean} - Success status
|
|
60
|
+
*/
|
|
61
|
+
addTask(name: string, cronExpression: string, taskFunction: TaskFunction, options?: TaskOptions): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Update an existing scheduled task
|
|
64
|
+
* @param {string} name - Name of the task to update
|
|
65
|
+
* @param {string} cronExpression - New cron expression
|
|
66
|
+
* @param {TaskFunction} taskFunction - New function to execute
|
|
67
|
+
* @param {TaskOptions} options - Additional options
|
|
68
|
+
* @returns {boolean} - Success status
|
|
69
|
+
*/
|
|
70
|
+
updateTask(name: string, cronExpression: string, taskFunction: TaskFunction, options?: TaskOptions): boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Remove a scheduled task
|
|
73
|
+
* @param {string} name - Name of the task to remove
|
|
74
|
+
* @returns {boolean} - Success status
|
|
75
|
+
*/
|
|
76
|
+
removeTask(name: string): boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Start a specific task
|
|
79
|
+
* @param {string} name - Name of the task to start
|
|
80
|
+
* @returns {boolean} - Success status
|
|
81
|
+
*/
|
|
82
|
+
startTask(name: string): boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Stop a specific task
|
|
85
|
+
* @param {string} name - Name of the task to stop
|
|
86
|
+
* @returns {boolean} - Success status
|
|
87
|
+
*/
|
|
88
|
+
stopTask(name: string): boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Start all tasks
|
|
91
|
+
*/
|
|
92
|
+
startAll(): void;
|
|
93
|
+
/**
|
|
94
|
+
* Stop all tasks
|
|
95
|
+
*/
|
|
96
|
+
stopAll(): void;
|
|
97
|
+
/**
|
|
98
|
+
* Get information about all scheduled tasks
|
|
99
|
+
* @returns {TaskInfo[]} - Array of task information objects
|
|
100
|
+
*/
|
|
101
|
+
getTasks(): TaskInfo[];
|
|
102
|
+
/**
|
|
103
|
+
* Get information about a specific task
|
|
104
|
+
* @param {string} name - Name of the task
|
|
105
|
+
* @returns {TaskInfo | null} - Task information or null if not found
|
|
106
|
+
*/
|
|
107
|
+
getTask(name: string): TaskInfo | null;
|
|
108
|
+
/**
|
|
109
|
+
* Validate a cron expression
|
|
110
|
+
* @param {string} cronExpression - Cron expression to validate
|
|
111
|
+
* @returns {boolean} - Whether the expression is valid
|
|
112
|
+
*/
|
|
113
|
+
validateCronExpression(cronExpression: string): boolean;
|
|
114
|
+
/**
|
|
115
|
+
* Check if the scheduler is initialized
|
|
116
|
+
* @returns {boolean} - Whether the scheduler is initialized
|
|
117
|
+
*/
|
|
118
|
+
isSchedulerInitialized(): boolean;
|
|
119
|
+
/**
|
|
120
|
+
* Get the number of active tasks
|
|
121
|
+
* @returns {number} - Number of active tasks
|
|
122
|
+
*/
|
|
123
|
+
getTaskCount(): number;
|
|
124
|
+
/**
|
|
125
|
+
* Shutdown the scheduler and clean up all tasks
|
|
126
|
+
*/
|
|
127
|
+
shutdown(): void;
|
|
128
|
+
}
|
|
129
|
+
declare const _default: TaskScheduler;
|
|
130
|
+
export default _default;
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
import cron from 'node-cron';
|
|
2
|
+
import { S4Logger } from '../logger/index.js';
|
|
3
|
+
const logger = new S4Logger();
|
|
4
|
+
/**
|
|
5
|
+
* TaskScheduler - Singleton class for managing cron-based scheduled tasks
|
|
6
|
+
* Provides helper functions around node-cron for easy task scheduling
|
|
7
|
+
*/
|
|
8
|
+
export class TaskScheduler {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.tasks = new Map();
|
|
11
|
+
this.isInitialized = false;
|
|
12
|
+
this.options = {};
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get the singleton instance of TaskScheduler
|
|
16
|
+
* @returns {TaskScheduler} The singleton instance
|
|
17
|
+
*/
|
|
18
|
+
static getInstance() {
|
|
19
|
+
if (!TaskScheduler.instance) {
|
|
20
|
+
TaskScheduler.instance = new TaskScheduler();
|
|
21
|
+
}
|
|
22
|
+
return TaskScheduler.instance;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Initialize the task scheduler
|
|
26
|
+
* @param {SchedulerOptions} options - Configuration options
|
|
27
|
+
* @param {string} options.timezone - Timezone for cron jobs (default: 'UTC')
|
|
28
|
+
* @param {boolean} options.scheduled - Whether to start tasks immediately (default: true)
|
|
29
|
+
*/
|
|
30
|
+
init(options = {}) {
|
|
31
|
+
if (this.isInitialized) {
|
|
32
|
+
logger.warn('TaskScheduler already initialized');
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
this.options = {
|
|
36
|
+
timezone: options.timezone || 'UTC',
|
|
37
|
+
scheduled: options.scheduled !== false
|
|
38
|
+
};
|
|
39
|
+
this.isInitialized = true;
|
|
40
|
+
logger.info('TaskScheduler initialized', {
|
|
41
|
+
timezone: this.options.timezone,
|
|
42
|
+
scheduled: this.options.scheduled
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Add a scheduled task
|
|
47
|
+
* @param {string} name - Unique name for the task
|
|
48
|
+
* @param {string} cronExpression - Cron expression (e.g., '0 0 * * *' for daily at midnight)
|
|
49
|
+
* @param {TaskFunction} taskFunction - Function to execute
|
|
50
|
+
* @param {TaskOptions} options - Additional options
|
|
51
|
+
* @param {boolean} options.scheduled - Whether to start the task immediately (default: true)
|
|
52
|
+
* @param {string} options.timezone - Timezone override for this task
|
|
53
|
+
* @returns {boolean} - Success status
|
|
54
|
+
*/
|
|
55
|
+
addTask(name, cronExpression, taskFunction, options = {}) {
|
|
56
|
+
if (!this.isInitialized) {
|
|
57
|
+
logger.error('TaskScheduler not initialized. Call init() first.');
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
if (this.tasks.has(name)) {
|
|
61
|
+
logger.warn(`Task '${name}' already exists. Use updateTask() to modify it.`);
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
if (!cron.validate(cronExpression)) {
|
|
65
|
+
logger.error(`Invalid cron expression for task '${name}': ${cronExpression}`);
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
const taskOptions = {
|
|
69
|
+
scheduled: options.scheduled !== false && this.options.scheduled,
|
|
70
|
+
timezone: options.timezone || this.options.timezone
|
|
71
|
+
};
|
|
72
|
+
try {
|
|
73
|
+
const task = cron.schedule(cronExpression, async () => {
|
|
74
|
+
const startTime = Date.now();
|
|
75
|
+
logger.info(`Starting scheduled task: ${name}`);
|
|
76
|
+
try {
|
|
77
|
+
await taskFunction();
|
|
78
|
+
const duration = Date.now() - startTime;
|
|
79
|
+
logger.info(`Completed scheduled task: ${name} (${duration}ms)`);
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
const duration = Date.now() - startTime;
|
|
83
|
+
logger.error(`Failed scheduled task: ${name} (${duration}ms)`, error);
|
|
84
|
+
}
|
|
85
|
+
}, taskOptions);
|
|
86
|
+
this.tasks.set(name, {
|
|
87
|
+
task,
|
|
88
|
+
cronExpression,
|
|
89
|
+
taskFunction,
|
|
90
|
+
options: taskOptions,
|
|
91
|
+
createdAt: new Date()
|
|
92
|
+
});
|
|
93
|
+
logger.info(`Added scheduled task: ${name}`, {
|
|
94
|
+
cronExpression,
|
|
95
|
+
scheduled: taskOptions.scheduled,
|
|
96
|
+
timezone: taskOptions.timezone
|
|
97
|
+
});
|
|
98
|
+
return true;
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
logger.error(`Failed to add scheduled task: ${name}`, error);
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Update an existing scheduled task
|
|
107
|
+
* @param {string} name - Name of the task to update
|
|
108
|
+
* @param {string} cronExpression - New cron expression
|
|
109
|
+
* @param {TaskFunction} taskFunction - New function to execute
|
|
110
|
+
* @param {TaskOptions} options - Additional options
|
|
111
|
+
* @returns {boolean} - Success status
|
|
112
|
+
*/
|
|
113
|
+
updateTask(name, cronExpression, taskFunction, options = {}) {
|
|
114
|
+
if (!this.tasks.has(name)) {
|
|
115
|
+
logger.error(`Task '${name}' not found. Use addTask() to create it.`);
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
// Remove existing task
|
|
119
|
+
this.removeTask(name);
|
|
120
|
+
// Add updated task
|
|
121
|
+
return this.addTask(name, cronExpression, taskFunction, options);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Remove a scheduled task
|
|
125
|
+
* @param {string} name - Name of the task to remove
|
|
126
|
+
* @returns {boolean} - Success status
|
|
127
|
+
*/
|
|
128
|
+
removeTask(name) {
|
|
129
|
+
if (!this.tasks.has(name)) {
|
|
130
|
+
logger.warn(`Task '${name}' not found`);
|
|
131
|
+
return false;
|
|
132
|
+
}
|
|
133
|
+
const taskInfo = this.tasks.get(name);
|
|
134
|
+
taskInfo.task.destroy();
|
|
135
|
+
this.tasks.delete(name);
|
|
136
|
+
logger.info(`Removed scheduled task: ${name}`);
|
|
137
|
+
return true;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Start a specific task
|
|
141
|
+
* @param {string} name - Name of the task to start
|
|
142
|
+
* @returns {boolean} - Success status
|
|
143
|
+
*/
|
|
144
|
+
startTask(name) {
|
|
145
|
+
if (!this.tasks.has(name)) {
|
|
146
|
+
logger.error(`Task '${name}' not found`);
|
|
147
|
+
return false;
|
|
148
|
+
}
|
|
149
|
+
const taskInfo = this.tasks.get(name);
|
|
150
|
+
taskInfo.task.start();
|
|
151
|
+
logger.info(`Started scheduled task: ${name}`);
|
|
152
|
+
return true;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Stop a specific task
|
|
156
|
+
* @param {string} name - Name of the task to stop
|
|
157
|
+
* @returns {boolean} - Success status
|
|
158
|
+
*/
|
|
159
|
+
stopTask(name) {
|
|
160
|
+
if (!this.tasks.has(name)) {
|
|
161
|
+
logger.error(`Task '${name}' not found`);
|
|
162
|
+
return false;
|
|
163
|
+
}
|
|
164
|
+
const taskInfo = this.tasks.get(name);
|
|
165
|
+
taskInfo.task.stop();
|
|
166
|
+
logger.info(`Stopped scheduled task: ${name}`);
|
|
167
|
+
return true;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Start all tasks
|
|
171
|
+
*/
|
|
172
|
+
startAll() {
|
|
173
|
+
this.tasks.forEach((taskInfo, name) => {
|
|
174
|
+
taskInfo.task.start();
|
|
175
|
+
});
|
|
176
|
+
logger.info(`Started all scheduled tasks (${this.tasks.size} tasks)`);
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Stop all tasks
|
|
180
|
+
*/
|
|
181
|
+
stopAll() {
|
|
182
|
+
this.tasks.forEach((taskInfo, name) => {
|
|
183
|
+
taskInfo.task.stop();
|
|
184
|
+
});
|
|
185
|
+
logger.info(`Stopped all scheduled tasks (${this.tasks.size} tasks)`);
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Get information about all scheduled tasks
|
|
189
|
+
* @returns {TaskInfo[]} - Array of task information objects
|
|
190
|
+
*/
|
|
191
|
+
getTasks() {
|
|
192
|
+
const tasks = [];
|
|
193
|
+
this.tasks.forEach((taskInfo, name) => {
|
|
194
|
+
tasks.push({
|
|
195
|
+
name,
|
|
196
|
+
cronExpression: taskInfo.cronExpression,
|
|
197
|
+
isRunning: taskInfo.task.running || false,
|
|
198
|
+
createdAt: taskInfo.createdAt,
|
|
199
|
+
options: taskInfo.options
|
|
200
|
+
});
|
|
201
|
+
});
|
|
202
|
+
return tasks;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Get information about a specific task
|
|
206
|
+
* @param {string} name - Name of the task
|
|
207
|
+
* @returns {TaskInfo | null} - Task information or null if not found
|
|
208
|
+
*/
|
|
209
|
+
getTask(name) {
|
|
210
|
+
if (!this.tasks.has(name)) {
|
|
211
|
+
return null;
|
|
212
|
+
}
|
|
213
|
+
const taskInfo = this.tasks.get(name);
|
|
214
|
+
return {
|
|
215
|
+
name,
|
|
216
|
+
cronExpression: taskInfo.cronExpression,
|
|
217
|
+
isRunning: taskInfo.task.running || false,
|
|
218
|
+
createdAt: taskInfo.createdAt,
|
|
219
|
+
options: taskInfo.options
|
|
220
|
+
};
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Validate a cron expression
|
|
224
|
+
* @param {string} cronExpression - Cron expression to validate
|
|
225
|
+
* @returns {boolean} - Whether the expression is valid
|
|
226
|
+
*/
|
|
227
|
+
validateCronExpression(cronExpression) {
|
|
228
|
+
return cron.validate(cronExpression);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Check if the scheduler is initialized
|
|
232
|
+
* @returns {boolean} - Whether the scheduler is initialized
|
|
233
|
+
*/
|
|
234
|
+
isSchedulerInitialized() {
|
|
235
|
+
return this.isInitialized;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Get the number of active tasks
|
|
239
|
+
* @returns {number} - Number of active tasks
|
|
240
|
+
*/
|
|
241
|
+
getTaskCount() {
|
|
242
|
+
return this.tasks.size;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Shutdown the scheduler and clean up all tasks
|
|
246
|
+
*/
|
|
247
|
+
shutdown() {
|
|
248
|
+
logger.info('Shutting down TaskScheduler...');
|
|
249
|
+
this.tasks.forEach((taskInfo, name) => {
|
|
250
|
+
taskInfo.task.destroy();
|
|
251
|
+
});
|
|
252
|
+
this.tasks.clear();
|
|
253
|
+
this.isInitialized = false;
|
|
254
|
+
logger.info('TaskScheduler shutdown complete');
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
// Export singleton instance
|
|
258
|
+
export default TaskScheduler.getInstance();
|
|
259
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../ts/task-scheduler/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sera4/essentia",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.13-rc.1",
|
|
4
4
|
"description": "A library of utilities for Teleporte Web Services",
|
|
5
5
|
"main": "dist/ts/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -34,7 +34,8 @@
|
|
|
34
34
|
"last-commit": "node last-commit.js",
|
|
35
35
|
"build": "tsc",
|
|
36
36
|
"build:watch": "tsc -w",
|
|
37
|
-
"clean": "rm -rf dist"
|
|
37
|
+
"clean": "rm -rf dist",
|
|
38
|
+
"publish:package": "scripts/publish.sh"
|
|
38
39
|
},
|
|
39
40
|
"author": "Dev DM <dev@sera4.com>",
|
|
40
41
|
"repository": {
|
|
@@ -43,6 +44,7 @@
|
|
|
43
44
|
},
|
|
44
45
|
"license": "UNLICENSED",
|
|
45
46
|
"devDependencies": {
|
|
47
|
+
"@types/amqplib": "^0.10.8",
|
|
46
48
|
"@types/argparse": "^2.0.17",
|
|
47
49
|
"@types/chai": "^4.3.11",
|
|
48
50
|
"@types/express": "^4.17.21",
|
|
@@ -50,9 +52,12 @@
|
|
|
50
52
|
"@types/mocha": "^10.0.10",
|
|
51
53
|
"@types/morgan": "^1.9.9",
|
|
52
54
|
"@types/node": "^20.17.32",
|
|
55
|
+
"@types/node-cron": "^3.0.11",
|
|
53
56
|
"@types/prompt": "^1.1.9",
|
|
54
57
|
"@types/sinon": "^10.0.20",
|
|
55
58
|
"@types/sinon-chai": "^4.0.0",
|
|
59
|
+
"@types/url-parse": "^1.4.11",
|
|
60
|
+
"@types/uuid": "^10.0.0",
|
|
56
61
|
"c8": "^8.0.1",
|
|
57
62
|
"chai": "^5.2.0",
|
|
58
63
|
"express": "^4.17.1",
|
|
@@ -67,7 +72,7 @@
|
|
|
67
72
|
"typescript": "^5.3.3"
|
|
68
73
|
},
|
|
69
74
|
"dependencies": {
|
|
70
|
-
"amqplib": "^0.10.
|
|
75
|
+
"amqplib": "^0.10.9",
|
|
71
76
|
"argparse": "^2.0.1",
|
|
72
77
|
"async": "^3.2.2",
|
|
73
78
|
"axios": "^1.7.7",
|
|
@@ -77,6 +82,7 @@
|
|
|
77
82
|
"git-rev": "^0.2.1",
|
|
78
83
|
"lodash": "^4.17.21",
|
|
79
84
|
"morgan": "^1.10.0",
|
|
85
|
+
"node-cron": "^4.2.1",
|
|
80
86
|
"prompt": "^1.3.0",
|
|
81
87
|
"recursive-iterator": "^3.3.0",
|
|
82
88
|
"url-parse": "^1.5.10",
|