@rpcbase/server 0.175.0 → 0.177.0

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/queue/index.js +22 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rpcbase/server",
3
- "version": "0.175.0",
3
+ "version": "0.177.0",
4
4
  "license": "SSPL-1.0",
5
5
  "main": "./index.js",
6
6
  "bin": {
package/queue/index.js CHANGED
@@ -5,13 +5,22 @@ const {WORKER_QUEUE_PORT, CONTAINER_MODE} = process.env
5
5
  const hostname = CONTAINER_MODE === "native" ? "127.0.0.1" : "worker-queue"
6
6
  const worker_queue_url = `redis://${hostname}:${WORKER_QUEUE_PORT}`
7
7
 
8
+ const QUEUE_NAME = "worker-queue"
9
+
10
+
8
11
  const tasks_list = Object.create(null)
9
12
 
10
13
  let worker_queue
11
14
 
15
+ const get_instance = () => {
16
+ if (!worker_queue) worker_queue = new Queue(QUEUE_NAME, worker_queue_url)
17
+ return worker_queue
18
+ }
19
+
20
+
12
21
  const worker_add = async(task_name, payload, options) => {
13
22
  if (!worker_queue) {
14
- worker_queue = new Queue("worker-queue", worker_queue_url)
23
+ worker_queue = new Queue(QUEUE_NAME, worker_queue_url)
15
24
  }
16
25
  const res = await worker_queue.add({task_name, payload}, options)
17
26
  console.log("worker_add:created task:", task_name, res.id)
@@ -20,6 +29,15 @@ const worker_add = async(task_name, payload, options) => {
20
29
  return res
21
30
  }
22
31
 
32
+ const get_job = async(job_id) => {
33
+ const queue = get_instance()
34
+ return queue.getJob(job_id)
35
+ }
36
+
37
+ const get_jobs = async(...args) => {
38
+ const queue = get_instance()
39
+ return queue.getJobs(...args)
40
+ }
23
41
 
24
42
  const register_task = (name, fn) => {
25
43
  // append module to tasks list
@@ -31,7 +49,7 @@ const get_tasks = () => tasks_list
31
49
  const start_worker = async() => {
32
50
  console.log("start worker queue", worker_queue_url)
33
51
 
34
- worker_queue = new Queue("worker-queue", worker_queue_url)
52
+ worker_queue = new Queue(QUEUE_NAME, worker_queue_url)
35
53
 
36
54
  // error handler
37
55
  worker_queue.on("error", (err) => {
@@ -69,11 +87,6 @@ const start_worker = async() => {
69
87
  }
70
88
 
71
89
 
72
- const get_instance = () => {
73
- if (!worker_queue) worker_queue = new Queue("worker-queue", worker_queue_url)
74
- return worker_queue
75
- }
76
-
77
90
  // TMP used to create additional queues, should be implemented with a better API in the future
78
91
  const get_url = () => {
79
92
  return worker_queue_url
@@ -83,6 +96,8 @@ module.exports = {
83
96
  start: start_worker,
84
97
  register_task,
85
98
  get_tasks,
99
+ get_job,
100
+ get_jobs,
86
101
  add: worker_add,
87
102
  instance: get_instance,
88
103
  get_url,