bunqueue 2.6.20 → 2.6.21
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/application/operations/push.js +2 -2
- package/dist/application/operations/push.js.map +1 -1
- package/dist/client/queue/addBatcher.d.ts.map +1 -1
- package/dist/client/queue/addBatcher.js +3 -1
- package/dist/client/queue/addBatcher.js.map +1 -1
- package/dist/client/sandboxed/worker.d.ts.map +1 -1
- package/dist/client/sandboxed/worker.js +30 -5
- package/dist/client/sandboxed/worker.js.map +1 -1
- package/dist/client/tcp/client.d.ts.map +1 -1
- package/dist/client/tcp/client.js +1 -0
- package/dist/client/tcp/client.js.map +1 -1
- package/dist/domain/queue/shard.d.ts +1 -0
- package/dist/domain/queue/shard.d.ts.map +1 -1
- package/dist/domain/queue/shard.js +3 -0
- package/dist/domain/queue/shard.js.map +1 -1
- package/dist/domain/queue/waiterManager.d.ts +2 -0
- package/dist/domain/queue/waiterManager.d.ts.map +1 -1
- package/dist/domain/queue/waiterManager.js +6 -0
- package/dist/domain/queue/waiterManager.js.map +1 -1
- package/dist/infrastructure/server/handler.d.ts.map +1 -1
- package/dist/infrastructure/server/handler.js +3 -1
- package/dist/infrastructure/server/handler.js.map +1 -1
- package/dist/infrastructure/server/handlers/core.d.ts.map +1 -1
- package/dist/infrastructure/server/handlers/core.js +5 -0
- package/dist/infrastructure/server/handlers/core.js.map +1 -1
- package/dist/infrastructure/server/http.d.ts.map +1 -1
- package/dist/infrastructure/server/http.js +7 -1
- package/dist/infrastructure/server/http.js.map +1 -1
- package/dist/infrastructure/server/httpRouteJobs.d.ts.map +1 -1
- package/dist/infrastructure/server/httpRouteJobs.js +39 -19
- package/dist/infrastructure/server/httpRouteJobs.js.map +1 -1
- package/dist/infrastructure/server/httpRouteQueueConfig.d.ts.map +1 -1
- package/dist/infrastructure/server/httpRouteQueueConfig.js +15 -7
- package/dist/infrastructure/server/httpRouteQueueConfig.js.map +1 -1
- package/dist/infrastructure/server/httpRouteQueues.d.ts.map +1 -1
- package/dist/infrastructure/server/httpRouteQueues.js +31 -15
- package/dist/infrastructure/server/httpRouteQueues.js.map +1 -1
- package/dist/infrastructure/server/httpRouteResources.d.ts.map +1 -1
- package/dist/infrastructure/server/httpRouteResources.js +11 -5
- package/dist/infrastructure/server/httpRouteResources.js.map +1 -1
- package/dist/infrastructure/server/tcp.d.ts.map +1 -1
- package/dist/infrastructure/server/tcp.js +2 -1
- package/dist/infrastructure/server/tcp.js.map +1 -1
- package/dist/shared/hash.js +3 -4
- package/dist/shared/hash.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/server/http.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/server/http.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAQnE,OAAO,EAAa,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AA2CrD,gCAAgC;AAChC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB;;;;;;YAwKzE,IAAI;EAMf;AA4DD,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* REST API and WebSocket support
|
|
4
4
|
*/
|
|
5
5
|
import { constantTimeEqual, uuid } from '../../shared/hash';
|
|
6
|
+
import { validateQueueName } from './protocol';
|
|
6
7
|
import { httpLog } from '../../shared/logger';
|
|
7
8
|
import { getRateLimiter } from './rateLimiter';
|
|
8
9
|
import { SseHandler } from './sseHandler';
|
|
@@ -12,6 +13,8 @@ import { routeJobRoutes } from './httpRouteJobs';
|
|
|
12
13
|
import { routeQueueRoutes } from './httpRouteQueues';
|
|
13
14
|
import { routeQueueConfigRoutes } from './httpRouteQueueConfig';
|
|
14
15
|
import { routeResourceRoutes } from './httpRouteResources';
|
|
16
|
+
// Pre-compiled regex patterns for URL matching
|
|
17
|
+
const RE_DASHBOARD_QUEUE_DETAIL = /^\/dashboard\/queues\/([^/]+)$/;
|
|
15
18
|
/**
|
|
16
19
|
* Validate auth token against valid tokens set
|
|
17
20
|
*/
|
|
@@ -220,9 +223,12 @@ async function routeRequest(req, path, ctx, corsOrigins) {
|
|
|
220
223
|
const offset = Math.max(parseInt(url.searchParams.get('offset') ?? '0') || 0, 0);
|
|
221
224
|
return dashboardQueuesEndpoint(ctx.queueManager, limit, offset, corsOrigins);
|
|
222
225
|
}
|
|
223
|
-
const dashQueueMatch = path.match(
|
|
226
|
+
const dashQueueMatch = path.match(RE_DASHBOARD_QUEUE_DETAIL);
|
|
224
227
|
if (dashQueueMatch && method === 'GET') {
|
|
225
228
|
const queue = decodeURIComponent(dashQueueMatch[1]);
|
|
229
|
+
const queueError = validateQueueName(queue);
|
|
230
|
+
if (queueError)
|
|
231
|
+
return jsonResponse({ ok: false, error: queueError }, 400, corsOrigins);
|
|
226
232
|
const url = new URL(req.url);
|
|
227
233
|
const includeJobs = url.searchParams.get('includeJobs') === 'true';
|
|
228
234
|
return dashboardQueueDetailEndpoint(ctx.queueManager, queue, includeJobs, corsOrigins);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/infrastructure/server/http.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/infrastructure/server/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpRouteJobs.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteJobs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAI9C,KAAK,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"httpRouteJobs.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteJobs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAI9C,KAAK,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;AAqOxB,oEAAoE;AACpE,wBAAsB,cAAc,CAClC,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CA2F1B"}
|
|
@@ -4,14 +4,34 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { handleCommand } from './handler';
|
|
6
6
|
import { jsonResponse, parseJsonBody } from './httpEndpoints';
|
|
7
|
+
// Pre-compiled regex patterns for URL matching
|
|
8
|
+
const RE_JOB_PROMOTE = /^\/jobs\/([^/]+)\/promote$/;
|
|
9
|
+
const RE_JOB_DATA = /^\/jobs\/([^/]+)\/data$/;
|
|
10
|
+
const RE_JOB_STATE = /^\/jobs\/([^/]+)\/state$/;
|
|
11
|
+
const RE_JOB_RESULT = /^\/jobs\/([^/]+)\/result$/;
|
|
12
|
+
const RE_JOB_PROGRESS = /^\/jobs\/([^/]+)\/progress$/;
|
|
13
|
+
const RE_JOB_PRIORITY = /^\/jobs\/([^/]+)\/priority$/;
|
|
14
|
+
const RE_JOB_DISCARD = /^\/jobs\/([^/]+)\/discard$/;
|
|
15
|
+
const RE_JOB_MOVE_DELAYED = /^\/jobs\/([^/]+)\/move-to-delayed$/;
|
|
16
|
+
const RE_JOB_DELAY = /^\/jobs\/([^/]+)\/delay$/;
|
|
17
|
+
const RE_JOB_CHILDREN = /^\/jobs\/([^/]+)\/children$/;
|
|
18
|
+
const RE_JOB_LOGS = /^\/jobs\/([^/]+)\/logs$/;
|
|
19
|
+
const RE_JOB_HEARTBEAT = /^\/jobs\/([^/]+)\/heartbeat$/;
|
|
20
|
+
const RE_JOB_WAIT = /^\/jobs\/([^/]+)\/wait$/;
|
|
21
|
+
const RE_JOB_EXTEND_LOCK = /^\/jobs\/([^/]+)\/extend-lock$/;
|
|
22
|
+
const RE_JOB_MOVE_TO_WAIT = /^\/jobs\/([^/]+)\/move-to-wait$/;
|
|
23
|
+
const RE_JOB_CUSTOM_ID = /^\/jobs\/custom\/([^/]+)$/;
|
|
24
|
+
const RE_JOB_BY_ID = /^\/jobs\/([^/]+)$/;
|
|
25
|
+
const RE_JOB_ACK = /^\/jobs\/([^/]+)\/ack$/;
|
|
26
|
+
const RE_JOB_FAIL = /^\/jobs\/([^/]+)\/fail$/;
|
|
7
27
|
/** Job management: promote, update, state, result, progress, priority, discard */
|
|
8
28
|
async function routeJobManagement(req, path, method, ctx, cors) {
|
|
9
|
-
const promoteMatch = path.match(
|
|
29
|
+
const promoteMatch = path.match(RE_JOB_PROMOTE);
|
|
10
30
|
if (promoteMatch && method === 'POST') {
|
|
11
31
|
const r = await handleCommand({ cmd: 'Promote', id: promoteMatch[1] }, ctx);
|
|
12
32
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
13
33
|
}
|
|
14
|
-
const dataMatch = path.match(
|
|
34
|
+
const dataMatch = path.match(RE_JOB_DATA);
|
|
15
35
|
if (dataMatch && method === 'PUT') {
|
|
16
36
|
let body;
|
|
17
37
|
try {
|
|
@@ -23,17 +43,17 @@ async function routeJobManagement(req, path, method, ctx, cors) {
|
|
|
23
43
|
const r = await handleCommand({ cmd: 'Update', id: dataMatch[1], data: body['data'] }, ctx);
|
|
24
44
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
25
45
|
}
|
|
26
|
-
const stateMatch = path.match(
|
|
46
|
+
const stateMatch = path.match(RE_JOB_STATE);
|
|
27
47
|
if (stateMatch && method === 'GET') {
|
|
28
48
|
const r = await handleCommand({ cmd: 'GetState', id: stateMatch[1] }, ctx);
|
|
29
49
|
return jsonResponse(r, r.ok ? 200 : 404, cors);
|
|
30
50
|
}
|
|
31
|
-
const resultMatch = path.match(
|
|
51
|
+
const resultMatch = path.match(RE_JOB_RESULT);
|
|
32
52
|
if (resultMatch && method === 'GET') {
|
|
33
53
|
const r = await handleCommand({ cmd: 'GetResult', id: resultMatch[1] }, ctx);
|
|
34
54
|
return jsonResponse(r, r.ok ? 200 : 404, cors);
|
|
35
55
|
}
|
|
36
|
-
const progressMatch = path.match(
|
|
56
|
+
const progressMatch = path.match(RE_JOB_PROGRESS);
|
|
37
57
|
if (progressMatch && method === 'GET') {
|
|
38
58
|
const r = await handleCommand({ cmd: 'GetProgress', id: progressMatch[1] }, ctx);
|
|
39
59
|
return jsonResponse(r, r.ok ? 200 : 404, cors);
|
|
@@ -50,7 +70,7 @@ async function routeJobManagement(req, path, method, ctx, cors) {
|
|
|
50
70
|
}, ctx);
|
|
51
71
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
52
72
|
}
|
|
53
|
-
const priorityMatch = path.match(
|
|
73
|
+
const priorityMatch = path.match(RE_JOB_PRIORITY);
|
|
54
74
|
if (priorityMatch && method === 'PUT') {
|
|
55
75
|
const body = await parseJsonBody(req, cors);
|
|
56
76
|
if (body instanceof Response)
|
|
@@ -62,7 +82,7 @@ async function routeJobManagement(req, path, method, ctx, cors) {
|
|
|
62
82
|
}, ctx);
|
|
63
83
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
64
84
|
}
|
|
65
|
-
const discardMatch = path.match(
|
|
85
|
+
const discardMatch = path.match(RE_JOB_DISCARD);
|
|
66
86
|
if (discardMatch && method === 'POST') {
|
|
67
87
|
const r = await handleCommand({ cmd: 'Discard', id: discardMatch[1] }, ctx);
|
|
68
88
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
@@ -71,7 +91,7 @@ async function routeJobManagement(req, path, method, ctx, cors) {
|
|
|
71
91
|
}
|
|
72
92
|
/** Job advanced: delay, children, logs, heartbeat, wait, lock, move-to-wait */
|
|
73
93
|
async function routeJobAdvanced(req, path, method, ctx, cors) {
|
|
74
|
-
const moveDelayedMatch = path.match(
|
|
94
|
+
const moveDelayedMatch = path.match(RE_JOB_MOVE_DELAYED);
|
|
75
95
|
if (moveDelayedMatch && method === 'POST') {
|
|
76
96
|
const body = await parseJsonBody(req, cors);
|
|
77
97
|
if (body instanceof Response)
|
|
@@ -83,7 +103,7 @@ async function routeJobAdvanced(req, path, method, ctx, cors) {
|
|
|
83
103
|
}, ctx);
|
|
84
104
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
85
105
|
}
|
|
86
|
-
const changeDelayMatch = path.match(
|
|
106
|
+
const changeDelayMatch = path.match(RE_JOB_DELAY);
|
|
87
107
|
if (changeDelayMatch && method === 'PUT') {
|
|
88
108
|
const body = await parseJsonBody(req, cors);
|
|
89
109
|
if (body instanceof Response)
|
|
@@ -95,12 +115,12 @@ async function routeJobAdvanced(req, path, method, ctx, cors) {
|
|
|
95
115
|
}, ctx);
|
|
96
116
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
97
117
|
}
|
|
98
|
-
const childrenMatch = path.match(
|
|
118
|
+
const childrenMatch = path.match(RE_JOB_CHILDREN);
|
|
99
119
|
if (childrenMatch && method === 'GET') {
|
|
100
120
|
const r = await handleCommand({ cmd: 'GetChildrenValues', id: childrenMatch[1] }, ctx);
|
|
101
121
|
return jsonResponse(r, r.ok ? 200 : 404, cors);
|
|
102
122
|
}
|
|
103
|
-
const logsMatch = path.match(
|
|
123
|
+
const logsMatch = path.match(RE_JOB_LOGS);
|
|
104
124
|
if (logsMatch && method === 'GET') {
|
|
105
125
|
const r = await handleCommand({ cmd: 'GetLogs', id: logsMatch[1] }, ctx);
|
|
106
126
|
return jsonResponse(r, 200, cors);
|
|
@@ -121,7 +141,7 @@ async function routeJobAdvanced(req, path, method, ctx, cors) {
|
|
|
121
141
|
const r = await handleCommand({ cmd: 'ClearLogs', id: logsMatch[1] }, ctx);
|
|
122
142
|
return jsonResponse(r, 200, cors);
|
|
123
143
|
}
|
|
124
|
-
const heartbeatMatch = path.match(
|
|
144
|
+
const heartbeatMatch = path.match(RE_JOB_HEARTBEAT);
|
|
125
145
|
if (heartbeatMatch && method === 'POST') {
|
|
126
146
|
const body = await parseJsonBody(req, cors);
|
|
127
147
|
if (body instanceof Response)
|
|
@@ -134,7 +154,7 @@ async function routeJobAdvanced(req, path, method, ctx, cors) {
|
|
|
134
154
|
}, ctx);
|
|
135
155
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
136
156
|
}
|
|
137
|
-
const waitMatch = path.match(
|
|
157
|
+
const waitMatch = path.match(RE_JOB_WAIT);
|
|
138
158
|
if (waitMatch && method === 'POST') {
|
|
139
159
|
const body = await parseJsonBody(req, cors);
|
|
140
160
|
if (body instanceof Response)
|
|
@@ -146,7 +166,7 @@ async function routeJobAdvanced(req, path, method, ctx, cors) {
|
|
|
146
166
|
}, ctx);
|
|
147
167
|
return jsonResponse(r, 200, cors);
|
|
148
168
|
}
|
|
149
|
-
const extendLockMatch = path.match(
|
|
169
|
+
const extendLockMatch = path.match(RE_JOB_EXTEND_LOCK);
|
|
150
170
|
if (extendLockMatch && method === 'POST') {
|
|
151
171
|
const body = await parseJsonBody(req, cors);
|
|
152
172
|
if (body instanceof Response)
|
|
@@ -159,7 +179,7 @@ async function routeJobAdvanced(req, path, method, ctx, cors) {
|
|
|
159
179
|
}, ctx);
|
|
160
180
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
161
181
|
}
|
|
162
|
-
const moveToWaitMatch = path.match(
|
|
182
|
+
const moveToWaitMatch = path.match(RE_JOB_MOVE_TO_WAIT);
|
|
163
183
|
if (moveToWaitMatch && method === 'POST') {
|
|
164
184
|
const r = await handleCommand({ cmd: 'MoveToWait', id: moveToWaitMatch[1] }, ctx);
|
|
165
185
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
@@ -205,14 +225,14 @@ export async function routeJobRoutes(req, path, method, ctx, cors) {
|
|
|
205
225
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
206
226
|
}
|
|
207
227
|
// GET /jobs/custom/:customId (before generic /jobs/:id)
|
|
208
|
-
const customIdMatch = path.match(
|
|
228
|
+
const customIdMatch = path.match(RE_JOB_CUSTOM_ID);
|
|
209
229
|
if (customIdMatch && method === 'GET') {
|
|
210
230
|
const customId = decodeURIComponent(customIdMatch[1]);
|
|
211
231
|
const r = await handleCommand({ cmd: 'GetJobByCustomId', customId }, ctx);
|
|
212
232
|
return jsonResponse(r, r.ok ? 200 : 404, cors);
|
|
213
233
|
}
|
|
214
234
|
// GET/DELETE /jobs/:id (generic, after specific paths)
|
|
215
|
-
const jobMatch = path.match(
|
|
235
|
+
const jobMatch = path.match(RE_JOB_BY_ID);
|
|
216
236
|
if (jobMatch) {
|
|
217
237
|
const id = jobMatch[1];
|
|
218
238
|
if (method === 'GET') {
|
|
@@ -225,7 +245,7 @@ export async function routeJobRoutes(req, path, method, ctx, cors) {
|
|
|
225
245
|
}
|
|
226
246
|
}
|
|
227
247
|
// POST /jobs/:id/ack
|
|
228
|
-
const ackMatch = path.match(
|
|
248
|
+
const ackMatch = path.match(RE_JOB_ACK);
|
|
229
249
|
if (ackMatch && method === 'POST') {
|
|
230
250
|
const body = await parseJsonBody(req, cors);
|
|
231
251
|
if (body instanceof Response)
|
|
@@ -234,7 +254,7 @@ export async function routeJobRoutes(req, path, method, ctx, cors) {
|
|
|
234
254
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
235
255
|
}
|
|
236
256
|
// POST /jobs/:id/fail
|
|
237
|
-
const failMatch = path.match(
|
|
257
|
+
const failMatch = path.match(RE_JOB_FAIL);
|
|
238
258
|
if (failMatch && method === 'POST') {
|
|
239
259
|
const body = await parseJsonBody(req, cors);
|
|
240
260
|
if (body instanceof Response)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpRouteJobs.js","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteJobs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"httpRouteJobs.js","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteJobs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpRouteQueueConfig.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteQueueConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"httpRouteQueueConfig.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteQueueConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAY9C,+EAA+E;AAC/E,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAChB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CA4H1B"}
|
|
@@ -4,10 +4,18 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { handleCommand } from './handler';
|
|
6
6
|
import { jsonResponse, parseJsonBody } from './httpEndpoints';
|
|
7
|
+
// Pre-compiled regex patterns for URL matching
|
|
8
|
+
const RE_QUEUE_DLQ = /^\/queues\/([^/]+)\/dlq$/;
|
|
9
|
+
const RE_QUEUE_DLQ_RETRY = /^\/queues\/([^/]+)\/dlq\/retry$/;
|
|
10
|
+
const RE_QUEUE_DLQ_PURGE = /^\/queues\/([^/]+)\/dlq\/purge$/;
|
|
11
|
+
const RE_QUEUE_RATE_LIMIT = /^\/queues\/([^/]+)\/rate-limit$/;
|
|
12
|
+
const RE_QUEUE_CONCURRENCY = /^\/queues\/([^/]+)\/concurrency$/;
|
|
13
|
+
const RE_QUEUE_STALL_CONFIG = /^\/queues\/([^/]+)\/stall-config$/;
|
|
14
|
+
const RE_QUEUE_DLQ_CONFIG = /^\/queues\/([^/]+)\/dlq-config$/;
|
|
7
15
|
/** Route queue config/admin requests. Returns Response or null if no match. */
|
|
8
16
|
export async function routeQueueConfigRoutes(req, path, method, ctx, cors) {
|
|
9
17
|
// DLQ: GET /queues/:queue/dlq
|
|
10
|
-
const dlqMatch = path.match(
|
|
18
|
+
const dlqMatch = path.match(RE_QUEUE_DLQ);
|
|
11
19
|
if (dlqMatch && method === 'GET') {
|
|
12
20
|
const queue = decodeURIComponent(dlqMatch[1]);
|
|
13
21
|
const count = parseInt(new URL(req.url).searchParams.get('count') ?? '100');
|
|
@@ -15,7 +23,7 @@ export async function routeQueueConfigRoutes(req, path, method, ctx, cors) {
|
|
|
15
23
|
return jsonResponse(r, 200, cors);
|
|
16
24
|
}
|
|
17
25
|
// POST /queues/:queue/dlq/retry
|
|
18
|
-
const dlqRetryMatch = path.match(
|
|
26
|
+
const dlqRetryMatch = path.match(RE_QUEUE_DLQ_RETRY);
|
|
19
27
|
if (dlqRetryMatch && method === 'POST') {
|
|
20
28
|
const queue = decodeURIComponent(dlqRetryMatch[1]);
|
|
21
29
|
const body = await parseJsonBody(req, cors);
|
|
@@ -29,14 +37,14 @@ export async function routeQueueConfigRoutes(req, path, method, ctx, cors) {
|
|
|
29
37
|
return jsonResponse(r, 200, cors);
|
|
30
38
|
}
|
|
31
39
|
// POST /queues/:queue/dlq/purge
|
|
32
|
-
const dlqPurgeMatch = path.match(
|
|
40
|
+
const dlqPurgeMatch = path.match(RE_QUEUE_DLQ_PURGE);
|
|
33
41
|
if (dlqPurgeMatch && method === 'POST') {
|
|
34
42
|
const queue = decodeURIComponent(dlqPurgeMatch[1]);
|
|
35
43
|
const r = await handleCommand({ cmd: 'PurgeDlq', queue }, ctx);
|
|
36
44
|
return jsonResponse(r, 200, cors);
|
|
37
45
|
}
|
|
38
46
|
// Rate limiting: PUT/DELETE /queues/:queue/rate-limit
|
|
39
|
-
const rateLimitMatch = path.match(
|
|
47
|
+
const rateLimitMatch = path.match(RE_QUEUE_RATE_LIMIT);
|
|
40
48
|
if (rateLimitMatch && method === 'PUT') {
|
|
41
49
|
const queue = decodeURIComponent(rateLimitMatch[1]);
|
|
42
50
|
const body = await parseJsonBody(req, cors);
|
|
@@ -55,7 +63,7 @@ export async function routeQueueConfigRoutes(req, path, method, ctx, cors) {
|
|
|
55
63
|
return jsonResponse(r, 200, cors);
|
|
56
64
|
}
|
|
57
65
|
// Concurrency: PUT/DELETE /queues/:queue/concurrency
|
|
58
|
-
const concurrencyMatch = path.match(
|
|
66
|
+
const concurrencyMatch = path.match(RE_QUEUE_CONCURRENCY);
|
|
59
67
|
if (concurrencyMatch && method === 'PUT') {
|
|
60
68
|
const queue = decodeURIComponent(concurrencyMatch[1]);
|
|
61
69
|
const body = await parseJsonBody(req, cors);
|
|
@@ -74,7 +82,7 @@ export async function routeQueueConfigRoutes(req, path, method, ctx, cors) {
|
|
|
74
82
|
return jsonResponse(r, 200, cors);
|
|
75
83
|
}
|
|
76
84
|
// Config: GET/PUT /queues/:queue/stall-config
|
|
77
|
-
const stallConfigMatch = path.match(
|
|
85
|
+
const stallConfigMatch = path.match(RE_QUEUE_STALL_CONFIG);
|
|
78
86
|
if (stallConfigMatch && method === 'GET') {
|
|
79
87
|
const queue = decodeURIComponent(stallConfigMatch[1]);
|
|
80
88
|
const r = await handleCommand({ cmd: 'GetStallConfig', queue }, ctx);
|
|
@@ -93,7 +101,7 @@ export async function routeQueueConfigRoutes(req, path, method, ctx, cors) {
|
|
|
93
101
|
return jsonResponse(r, 200, cors);
|
|
94
102
|
}
|
|
95
103
|
// Config: GET/PUT /queues/:queue/dlq-config
|
|
96
|
-
const dlqConfigMatch = path.match(
|
|
104
|
+
const dlqConfigMatch = path.match(RE_QUEUE_DLQ_CONFIG);
|
|
97
105
|
if (dlqConfigMatch && method === 'GET') {
|
|
98
106
|
const queue = decodeURIComponent(dlqConfigMatch[1]);
|
|
99
107
|
const r = await handleCommand({ cmd: 'GetDlqConfig', queue }, ctx);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpRouteQueueConfig.js","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteQueueConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE9D,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,GAAY,EACZ,IAAY,EACZ,MAAc,EACd,GAAmB,EACnB,IAAiB;IAEjB,8BAA8B;IAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"httpRouteQueueConfig.js","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteQueueConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpRouteQueues.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteQueues.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"httpRouteQueues.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/server/httpRouteQueues.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AA6I9C,sEAAsE;AACtE,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAChB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAiI1B"}
|
|
@@ -4,10 +4,26 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { handleCommand } from './handler';
|
|
6
6
|
import { jsonResponse, parseJsonBody } from './httpEndpoints';
|
|
7
|
+
// Pre-compiled regex patterns for URL matching
|
|
8
|
+
const RE_QUEUE_JOBS = /^\/queues\/([^/]+)\/jobs$/;
|
|
9
|
+
const RE_QUEUE_JOBS_BULK = /^\/queues\/([^/]+)\/jobs\/bulk$/;
|
|
10
|
+
const RE_QUEUE_JOBS_PULL_BATCH = /^\/queues\/([^/]+)\/jobs\/pull-batch$/;
|
|
11
|
+
const RE_QUEUE_JOBS_LIST = /^\/queues\/([^/]+)\/jobs\/list$/;
|
|
12
|
+
const RE_QUEUE_COUNTS = /^\/queues\/([^/]+)\/counts$/;
|
|
13
|
+
const RE_QUEUE_COUNT = /^\/queues\/([^/]+)\/count$/;
|
|
14
|
+
const RE_QUEUE_PRIORITY_COUNTS = /^\/queues\/([^/]+)\/priority-counts$/;
|
|
15
|
+
const RE_QUEUE_PAUSED = /^\/queues\/([^/]+)\/paused$/;
|
|
16
|
+
const RE_QUEUE_PAUSE = /^\/queues\/([^/]+)\/pause$/;
|
|
17
|
+
const RE_QUEUE_RESUME = /^\/queues\/([^/]+)\/resume$/;
|
|
18
|
+
const RE_QUEUE_DRAIN = /^\/queues\/([^/]+)\/drain$/;
|
|
19
|
+
const RE_QUEUE_OBLITERATE = /^\/queues\/([^/]+)\/obliterate$/;
|
|
20
|
+
const RE_QUEUE_CLEAN = /^\/queues\/([^/]+)\/clean$/;
|
|
21
|
+
const RE_QUEUE_PROMOTE_JOBS = /^\/queues\/([^/]+)\/promote-jobs$/;
|
|
22
|
+
const RE_QUEUE_RETRY_COMPLETED = /^\/queues\/([^/]+)\/retry-completed$/;
|
|
7
23
|
/** Route push/pull/bulk job operations */
|
|
8
24
|
async function routeJobOps(req, path, method, ctx, cors) {
|
|
9
25
|
// POST/GET /queues/:queue/jobs - push/pull
|
|
10
|
-
const queueJobsMatch = path.match(
|
|
26
|
+
const queueJobsMatch = path.match(RE_QUEUE_JOBS);
|
|
11
27
|
if (queueJobsMatch) {
|
|
12
28
|
const queue = decodeURIComponent(queueJobsMatch[1]);
|
|
13
29
|
if (method === 'POST') {
|
|
@@ -49,7 +65,7 @@ async function routeJobOps(req, path, method, ctx, cors) {
|
|
|
49
65
|
}
|
|
50
66
|
}
|
|
51
67
|
// POST /queues/:queue/jobs/bulk - bulk push
|
|
52
|
-
const bulkMatch = path.match(
|
|
68
|
+
const bulkMatch = path.match(RE_QUEUE_JOBS_BULK);
|
|
53
69
|
if (bulkMatch && method === 'POST') {
|
|
54
70
|
const queue = decodeURIComponent(bulkMatch[1]);
|
|
55
71
|
let body;
|
|
@@ -67,7 +83,7 @@ async function routeJobOps(req, path, method, ctx, cors) {
|
|
|
67
83
|
return jsonResponse(r, r.ok ? 200 : 400, cors);
|
|
68
84
|
}
|
|
69
85
|
// POST /queues/:queue/jobs/pull-batch
|
|
70
|
-
const pullBatchMatch = path.match(
|
|
86
|
+
const pullBatchMatch = path.match(RE_QUEUE_JOBS_PULL_BATCH);
|
|
71
87
|
if (pullBatchMatch && method === 'POST') {
|
|
72
88
|
const queue = decodeURIComponent(pullBatchMatch[1]);
|
|
73
89
|
const body = await parseJsonBody(req, cors);
|
|
@@ -84,7 +100,7 @@ async function routeJobOps(req, path, method, ctx, cors) {
|
|
|
84
100
|
return jsonResponse(r, 200, cors);
|
|
85
101
|
}
|
|
86
102
|
// GET /queues/:queue/jobs/list?state=&limit=&offset=
|
|
87
|
-
const listMatch = path.match(
|
|
103
|
+
const listMatch = path.match(RE_QUEUE_JOBS_LIST);
|
|
88
104
|
if (listMatch && method === 'GET') {
|
|
89
105
|
const queue = decodeURIComponent(listMatch[1]);
|
|
90
106
|
const url = new URL(req.url);
|
|
@@ -116,63 +132,63 @@ export async function routeQueueRoutes(req, path, method, ctx, cors) {
|
|
|
116
132
|
if (jobOpsResult)
|
|
117
133
|
return jobOpsResult;
|
|
118
134
|
// GET /queues/:queue/counts
|
|
119
|
-
const countsMatch = path.match(
|
|
135
|
+
const countsMatch = path.match(RE_QUEUE_COUNTS);
|
|
120
136
|
if (countsMatch && method === 'GET') {
|
|
121
137
|
const queue = decodeURIComponent(countsMatch[1]);
|
|
122
138
|
const r = await handleCommand({ cmd: 'GetJobCounts', queue }, ctx);
|
|
123
139
|
return jsonResponse(r, 200, cors);
|
|
124
140
|
}
|
|
125
141
|
// GET /queues/:queue/count
|
|
126
|
-
const countMatch = path.match(
|
|
142
|
+
const countMatch = path.match(RE_QUEUE_COUNT);
|
|
127
143
|
if (countMatch && method === 'GET') {
|
|
128
144
|
const queue = decodeURIComponent(countMatch[1]);
|
|
129
145
|
const r = await handleCommand({ cmd: 'Count', queue }, ctx);
|
|
130
146
|
return jsonResponse(r, 200, cors);
|
|
131
147
|
}
|
|
132
148
|
// GET /queues/:queue/priority-counts
|
|
133
|
-
const priCountsMatch = path.match(
|
|
149
|
+
const priCountsMatch = path.match(RE_QUEUE_PRIORITY_COUNTS);
|
|
134
150
|
if (priCountsMatch && method === 'GET') {
|
|
135
151
|
const queue = decodeURIComponent(priCountsMatch[1]);
|
|
136
152
|
const r = await handleCommand({ cmd: 'GetCountsPerPriority', queue }, ctx);
|
|
137
153
|
return jsonResponse(r, 200, cors);
|
|
138
154
|
}
|
|
139
155
|
// GET /queues/:queue/paused
|
|
140
|
-
const pausedMatch = path.match(
|
|
156
|
+
const pausedMatch = path.match(RE_QUEUE_PAUSED);
|
|
141
157
|
if (pausedMatch && method === 'GET') {
|
|
142
158
|
const queue = decodeURIComponent(pausedMatch[1]);
|
|
143
159
|
const r = await handleCommand({ cmd: 'IsPaused', queue }, ctx);
|
|
144
160
|
return jsonResponse(r, 200, cors);
|
|
145
161
|
}
|
|
146
162
|
// POST /queues/:queue/pause
|
|
147
|
-
const pauseMatch = path.match(
|
|
163
|
+
const pauseMatch = path.match(RE_QUEUE_PAUSE);
|
|
148
164
|
if (pauseMatch && method === 'POST') {
|
|
149
165
|
const queue = decodeURIComponent(pauseMatch[1]);
|
|
150
166
|
const r = await handleCommand({ cmd: 'Pause', queue }, ctx);
|
|
151
167
|
return jsonResponse(r, 200, cors);
|
|
152
168
|
}
|
|
153
169
|
// POST /queues/:queue/resume
|
|
154
|
-
const resumeMatch = path.match(
|
|
170
|
+
const resumeMatch = path.match(RE_QUEUE_RESUME);
|
|
155
171
|
if (resumeMatch && method === 'POST') {
|
|
156
172
|
const queue = decodeURIComponent(resumeMatch[1]);
|
|
157
173
|
const r = await handleCommand({ cmd: 'Resume', queue }, ctx);
|
|
158
174
|
return jsonResponse(r, 200, cors);
|
|
159
175
|
}
|
|
160
176
|
// POST /queues/:queue/drain
|
|
161
|
-
const drainMatch = path.match(
|
|
177
|
+
const drainMatch = path.match(RE_QUEUE_DRAIN);
|
|
162
178
|
if (drainMatch && method === 'POST') {
|
|
163
179
|
const queue = decodeURIComponent(drainMatch[1]);
|
|
164
180
|
const r = await handleCommand({ cmd: 'Drain', queue }, ctx);
|
|
165
181
|
return jsonResponse(r, 200, cors);
|
|
166
182
|
}
|
|
167
183
|
// POST /queues/:queue/obliterate
|
|
168
|
-
const obliterateMatch = path.match(
|
|
184
|
+
const obliterateMatch = path.match(RE_QUEUE_OBLITERATE);
|
|
169
185
|
if (obliterateMatch && method === 'POST') {
|
|
170
186
|
const queue = decodeURIComponent(obliterateMatch[1]);
|
|
171
187
|
const r = await handleCommand({ cmd: 'Obliterate', queue }, ctx);
|
|
172
188
|
return jsonResponse(r, 200, cors);
|
|
173
189
|
}
|
|
174
190
|
// POST /queues/:queue/clean
|
|
175
|
-
const cleanMatch = path.match(
|
|
191
|
+
const cleanMatch = path.match(RE_QUEUE_CLEAN);
|
|
176
192
|
if (cleanMatch && method === 'POST') {
|
|
177
193
|
const queue = decodeURIComponent(cleanMatch[1]);
|
|
178
194
|
const body = await parseJsonBody(req, cors);
|
|
@@ -188,7 +204,7 @@ export async function routeQueueRoutes(req, path, method, ctx, cors) {
|
|
|
188
204
|
return jsonResponse(r, 200, cors);
|
|
189
205
|
}
|
|
190
206
|
// POST /queues/:queue/promote-jobs
|
|
191
|
-
const promoteJobsMatch = path.match(
|
|
207
|
+
const promoteJobsMatch = path.match(RE_QUEUE_PROMOTE_JOBS);
|
|
192
208
|
if (promoteJobsMatch && method === 'POST') {
|
|
193
209
|
const queue = decodeURIComponent(promoteJobsMatch[1]);
|
|
194
210
|
const body = await parseJsonBody(req, cors);
|
|
@@ -202,7 +218,7 @@ export async function routeQueueRoutes(req, path, method, ctx, cors) {
|
|
|
202
218
|
return jsonResponse(r, 200, cors);
|
|
203
219
|
}
|
|
204
220
|
// POST /queues/:queue/retry-completed
|
|
205
|
-
const retryCompMatch = path.match(
|
|
221
|
+
const retryCompMatch = path.match(RE_QUEUE_RETRY_COMPLETED);
|
|
206
222
|
if (retryCompMatch && method === 'POST') {
|
|
207
223
|
const queue = decodeURIComponent(retryCompMatch[1]);
|
|
208
224
|
const body = await parseJsonBody(req, cors);
|