@orchestr-sh/orchestr 1.7.4 → 1.9.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/README.md +666 -0
- package/dist/Cache/CacheManager.d.ts +109 -0
- package/dist/Cache/CacheManager.d.ts.map +1 -0
- package/dist/Cache/CacheManager.js +181 -0
- package/dist/Cache/CacheManager.js.map +1 -0
- package/dist/Cache/CacheServiceProvider.d.ts +19 -0
- package/dist/Cache/CacheServiceProvider.d.ts.map +1 -0
- package/dist/Cache/CacheServiceProvider.js +71 -0
- package/dist/Cache/CacheServiceProvider.js.map +1 -0
- package/dist/Cache/Contracts/Lock.d.ts +31 -0
- package/dist/Cache/Contracts/Lock.d.ts.map +1 -0
- package/dist/Cache/Contracts/Lock.js +3 -0
- package/dist/Cache/Contracts/Lock.js.map +1 -0
- package/dist/Cache/Contracts/Repository.d.ts +59 -0
- package/dist/Cache/Contracts/Repository.d.ts.map +1 -0
- package/dist/Cache/Contracts/Repository.js +9 -0
- package/dist/Cache/Contracts/Repository.js.map +1 -0
- package/dist/Cache/Contracts/Store.d.ts +51 -0
- package/dist/Cache/Contracts/Store.d.ts.map +1 -0
- package/dist/Cache/Contracts/Store.js +3 -0
- package/dist/Cache/Contracts/Store.js.map +1 -0
- package/dist/Cache/Events/CacheFlushed.d.ts +11 -0
- package/dist/Cache/Events/CacheFlushed.d.ts.map +1 -0
- package/dist/Cache/Events/CacheFlushed.js +18 -0
- package/dist/Cache/Events/CacheFlushed.js.map +1 -0
- package/dist/Cache/Events/CacheHit.d.ts +13 -0
- package/dist/Cache/Events/CacheHit.d.ts.map +1 -0
- package/dist/Cache/Events/CacheHit.js +22 -0
- package/dist/Cache/Events/CacheHit.js.map +1 -0
- package/dist/Cache/Events/CacheMissed.d.ts +12 -0
- package/dist/Cache/Events/CacheMissed.d.ts.map +1 -0
- package/dist/Cache/Events/CacheMissed.js +20 -0
- package/dist/Cache/Events/CacheMissed.js.map +1 -0
- package/dist/Cache/Events/KeyForgotten.d.ts +12 -0
- package/dist/Cache/Events/KeyForgotten.d.ts.map +1 -0
- package/dist/Cache/Events/KeyForgotten.js +20 -0
- package/dist/Cache/Events/KeyForgotten.js.map +1 -0
- package/dist/Cache/Events/KeyWritten.d.ts +14 -0
- package/dist/Cache/Events/KeyWritten.d.ts.map +1 -0
- package/dist/Cache/Events/KeyWritten.js +24 -0
- package/dist/Cache/Events/KeyWritten.js.map +1 -0
- package/dist/Cache/Events/index.d.ts +6 -0
- package/dist/Cache/Events/index.d.ts.map +1 -0
- package/dist/Cache/Events/index.js +14 -0
- package/dist/Cache/Events/index.js.map +1 -0
- package/dist/Cache/Locks/CacheLock.d.ts +19 -0
- package/dist/Cache/Locks/CacheLock.d.ts.map +1 -0
- package/dist/Cache/Locks/CacheLock.js +49 -0
- package/dist/Cache/Locks/CacheLock.js.map +1 -0
- package/dist/Cache/Locks/Lock.d.ts +51 -0
- package/dist/Cache/Locks/Lock.d.ts.map +1 -0
- package/dist/Cache/Locks/Lock.js +83 -0
- package/dist/Cache/Locks/Lock.js.map +1 -0
- package/dist/Cache/Locks/LockTimeoutException.d.ts +9 -0
- package/dist/Cache/Locks/LockTimeoutException.d.ts.map +1 -0
- package/dist/Cache/Locks/LockTimeoutException.js +16 -0
- package/dist/Cache/Locks/LockTimeoutException.js.map +1 -0
- package/dist/Cache/Locks/index.d.ts +4 -0
- package/dist/Cache/Locks/index.d.ts.map +1 -0
- package/dist/Cache/Locks/index.js +10 -0
- package/dist/Cache/Locks/index.js.map +1 -0
- package/dist/Cache/Repository.d.ts +61 -0
- package/dist/Cache/Repository.d.ts.map +1 -0
- package/dist/Cache/Repository.js +207 -0
- package/dist/Cache/Repository.js.map +1 -0
- package/dist/Cache/Stores/ArrayStore.d.ts +44 -0
- package/dist/Cache/Stores/ArrayStore.d.ts.map +1 -0
- package/dist/Cache/Stores/ArrayStore.js +118 -0
- package/dist/Cache/Stores/ArrayStore.js.map +1 -0
- package/dist/Cache/Stores/DatabaseStore.d.ts +44 -0
- package/dist/Cache/Stores/DatabaseStore.d.ts.map +1 -0
- package/dist/Cache/Stores/DatabaseStore.js +165 -0
- package/dist/Cache/Stores/DatabaseStore.js.map +1 -0
- package/dist/Cache/Stores/FileStore.d.ts +50 -0
- package/dist/Cache/Stores/FileStore.d.ts.map +1 -0
- package/dist/Cache/Stores/FileStore.js +194 -0
- package/dist/Cache/Stores/FileStore.js.map +1 -0
- package/dist/Cache/Stores/NullStore.d.ts +22 -0
- package/dist/Cache/Stores/NullStore.d.ts.map +1 -0
- package/dist/Cache/Stores/NullStore.js +49 -0
- package/dist/Cache/Stores/NullStore.js.map +1 -0
- package/dist/Cache/Stores/index.d.ts +5 -0
- package/dist/Cache/Stores/index.d.ts.map +1 -0
- package/dist/Cache/Stores/index.js +12 -0
- package/dist/Cache/Stores/index.js.map +1 -0
- package/dist/Cache/Tags/TagSet.d.ts +39 -0
- package/dist/Cache/Tags/TagSet.d.ts.map +1 -0
- package/dist/Cache/Tags/TagSet.js +72 -0
- package/dist/Cache/Tags/TagSet.js.map +1 -0
- package/dist/Cache/Tags/TaggedCache.d.ts +54 -0
- package/dist/Cache/Tags/TaggedCache.d.ts.map +1 -0
- package/dist/Cache/Tags/TaggedCache.js +125 -0
- package/dist/Cache/Tags/TaggedCache.js.map +1 -0
- package/dist/Cache/Tags/index.d.ts +3 -0
- package/dist/Cache/Tags/index.d.ts.map +1 -0
- package/dist/Cache/Tags/index.js +8 -0
- package/dist/Cache/Tags/index.js.map +1 -0
- package/dist/Cache/index.d.ts +27 -0
- package/dist/Cache/index.d.ts.map +1 -0
- package/dist/Cache/index.js +48 -0
- package/dist/Cache/index.js.map +1 -0
- package/dist/Console/Commands/CacheClearCommand.d.ts +16 -0
- package/dist/Console/Commands/CacheClearCommand.d.ts.map +1 -0
- package/dist/Console/Commands/CacheClearCommand.js +33 -0
- package/dist/Console/Commands/CacheClearCommand.js.map +1 -0
- package/dist/Console/Commands/CacheForgetCommand.d.ts +16 -0
- package/dist/Console/Commands/CacheForgetCommand.d.ts.map +1 -0
- package/dist/Console/Commands/CacheForgetCommand.js +39 -0
- package/dist/Console/Commands/CacheForgetCommand.js.map +1 -0
- package/dist/Console/Commands/CacheTableCommand.d.ts +17 -0
- package/dist/Console/Commands/CacheTableCommand.d.ts.map +1 -0
- package/dist/Console/Commands/CacheTableCommand.js +92 -0
- package/dist/Console/Commands/CacheTableCommand.js.map +1 -0
- package/dist/Console/Commands/MakeJobCommand.d.ts +20 -0
- package/dist/Console/Commands/MakeJobCommand.d.ts.map +1 -0
- package/dist/Console/Commands/MakeJobCommand.js +165 -0
- package/dist/Console/Commands/MakeJobCommand.js.map +1 -0
- package/dist/Console/Commands/QueueBatchesTableCommand.d.ts +17 -0
- package/dist/Console/Commands/QueueBatchesTableCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueBatchesTableCommand.js +92 -0
- package/dist/Console/Commands/QueueBatchesTableCommand.js.map +1 -0
- package/dist/Console/Commands/QueueClearCommand.d.ts +16 -0
- package/dist/Console/Commands/QueueClearCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueClearCommand.js +29 -0
- package/dist/Console/Commands/QueueClearCommand.js.map +1 -0
- package/dist/Console/Commands/QueueFailedCommand.d.ts +18 -0
- package/dist/Console/Commands/QueueFailedCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueFailedCommand.js +76 -0
- package/dist/Console/Commands/QueueFailedCommand.js.map +1 -0
- package/dist/Console/Commands/QueueFailedTableCommand.d.ts +17 -0
- package/dist/Console/Commands/QueueFailedTableCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueFailedTableCommand.js +89 -0
- package/dist/Console/Commands/QueueFailedTableCommand.js.map +1 -0
- package/dist/Console/Commands/QueueFlushCommand.d.ts +18 -0
- package/dist/Console/Commands/QueueFlushCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueFlushCommand.js +44 -0
- package/dist/Console/Commands/QueueFlushCommand.js.map +1 -0
- package/dist/Console/Commands/QueueForgetCommand.d.ts +18 -0
- package/dist/Console/Commands/QueueForgetCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueForgetCommand.js +48 -0
- package/dist/Console/Commands/QueueForgetCommand.js.map +1 -0
- package/dist/Console/Commands/QueueMonitorCommand.d.ts +16 -0
- package/dist/Console/Commands/QueueMonitorCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueMonitorCommand.js +42 -0
- package/dist/Console/Commands/QueueMonitorCommand.js.map +1 -0
- package/dist/Console/Commands/QueuePruneBatchesCommand.d.ts +16 -0
- package/dist/Console/Commands/QueuePruneBatchesCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueuePruneBatchesCommand.js +44 -0
- package/dist/Console/Commands/QueuePruneBatchesCommand.js.map +1 -0
- package/dist/Console/Commands/QueuePruneFailedCommand.d.ts +18 -0
- package/dist/Console/Commands/QueuePruneFailedCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueuePruneFailedCommand.js +39 -0
- package/dist/Console/Commands/QueuePruneFailedCommand.js.map +1 -0
- package/dist/Console/Commands/QueueRestartCommand.d.ts +16 -0
- package/dist/Console/Commands/QueueRestartCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueRestartCommand.js +34 -0
- package/dist/Console/Commands/QueueRestartCommand.js.map +1 -0
- package/dist/Console/Commands/QueueRetryCommand.d.ts +20 -0
- package/dist/Console/Commands/QueueRetryCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueRetryCommand.js +77 -0
- package/dist/Console/Commands/QueueRetryCommand.js.map +1 -0
- package/dist/Console/Commands/QueueTableCommand.d.ts +17 -0
- package/dist/Console/Commands/QueueTableCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueTableCommand.js +89 -0
- package/dist/Console/Commands/QueueTableCommand.js.map +1 -0
- package/dist/Console/Commands/QueueWorkCommand.d.ts +16 -0
- package/dist/Console/Commands/QueueWorkCommand.d.ts.map +1 -0
- package/dist/Console/Commands/QueueWorkCommand.js +51 -0
- package/dist/Console/Commands/QueueWorkCommand.js.map +1 -0
- package/dist/Facades/Bus.d.ts +62 -0
- package/dist/Facades/Bus.d.ts.map +1 -0
- package/dist/Facades/Bus.js +102 -0
- package/dist/Facades/Bus.js.map +1 -0
- package/dist/Facades/Cache.d.ts +41 -0
- package/dist/Facades/Cache.d.ts.map +1 -0
- package/dist/Facades/Cache.js +78 -0
- package/dist/Facades/Cache.js.map +1 -0
- package/dist/Facades/Queue.d.ts +42 -0
- package/dist/Facades/Queue.d.ts.map +1 -0
- package/dist/Facades/Queue.js +71 -0
- package/dist/Facades/Queue.js.map +1 -0
- package/dist/Facades/index.d.ts +3 -0
- package/dist/Facades/index.d.ts.map +1 -1
- package/dist/Facades/index.js +7 -1
- package/dist/Facades/index.js.map +1 -1
- package/dist/Queue/Batching/Batch.d.ts +86 -0
- package/dist/Queue/Batching/Batch.d.ts.map +1 -0
- package/dist/Queue/Batching/Batch.js +170 -0
- package/dist/Queue/Batching/Batch.js.map +1 -0
- package/dist/Queue/Batching/PendingBatch.d.ts +72 -0
- package/dist/Queue/Batching/PendingBatch.d.ts.map +1 -0
- package/dist/Queue/Batching/PendingBatch.js +122 -0
- package/dist/Queue/Batching/PendingBatch.js.map +1 -0
- package/dist/Queue/Batching/index.d.ts +3 -0
- package/dist/Queue/Batching/index.d.ts.map +1 -0
- package/dist/Queue/Batching/index.js +8 -0
- package/dist/Queue/Batching/index.js.map +1 -0
- package/dist/Queue/Concerns/Dispatchable.d.ts +36 -0
- package/dist/Queue/Concerns/Dispatchable.d.ts.map +1 -0
- package/dist/Queue/Concerns/Dispatchable.js +102 -0
- package/dist/Queue/Concerns/Dispatchable.js.map +1 -0
- package/dist/Queue/Contracts/QueueDriver.d.ts +67 -0
- package/dist/Queue/Contracts/QueueDriver.d.ts.map +1 -0
- package/dist/Queue/Contracts/QueueDriver.js +9 -0
- package/dist/Queue/Contracts/QueueDriver.js.map +1 -0
- package/dist/Queue/Contracts/QueueableJob.d.ts +74 -0
- package/dist/Queue/Contracts/QueueableJob.d.ts.map +1 -0
- package/dist/Queue/Contracts/QueueableJob.js +9 -0
- package/dist/Queue/Contracts/QueueableJob.js.map +1 -0
- package/dist/Queue/Contracts/ShouldBeUnique.d.ts +43 -0
- package/dist/Queue/Contracts/ShouldBeUnique.d.ts.map +1 -0
- package/dist/Queue/Contracts/ShouldBeUnique.js +12 -0
- package/dist/Queue/Contracts/ShouldBeUnique.js.map +1 -0
- package/dist/Queue/Drivers/DatabaseDriver.d.ts +39 -0
- package/dist/Queue/Drivers/DatabaseDriver.d.ts.map +1 -0
- package/dist/Queue/Drivers/DatabaseDriver.js +176 -0
- package/dist/Queue/Drivers/DatabaseDriver.js.map +1 -0
- package/dist/Queue/Drivers/NullDriver.d.ts +30 -0
- package/dist/Queue/Drivers/NullDriver.d.ts.map +1 -0
- package/dist/Queue/Drivers/NullDriver.js +57 -0
- package/dist/Queue/Drivers/NullDriver.js.map +1 -0
- package/dist/Queue/Drivers/SyncDriver.d.ts +29 -0
- package/dist/Queue/Drivers/SyncDriver.d.ts.map +1 -0
- package/dist/Queue/Drivers/SyncDriver.js +67 -0
- package/dist/Queue/Drivers/SyncDriver.js.map +1 -0
- package/dist/Queue/Drivers/index.d.ts +4 -0
- package/dist/Queue/Drivers/index.d.ts.map +1 -0
- package/dist/Queue/Drivers/index.js +10 -0
- package/dist/Queue/Drivers/index.js.map +1 -0
- package/dist/Queue/Events/JobExceptionOccurred.d.ts +13 -0
- package/dist/Queue/Events/JobExceptionOccurred.d.ts.map +1 -0
- package/dist/Queue/Events/JobExceptionOccurred.js +20 -0
- package/dist/Queue/Events/JobExceptionOccurred.js.map +1 -0
- package/dist/Queue/Events/JobFailed.d.ts +13 -0
- package/dist/Queue/Events/JobFailed.d.ts.map +1 -0
- package/dist/Queue/Events/JobFailed.js +20 -0
- package/dist/Queue/Events/JobFailed.js.map +1 -0
- package/dist/Queue/Events/JobProcessed.d.ts +12 -0
- package/dist/Queue/Events/JobProcessed.d.ts.map +1 -0
- package/dist/Queue/Events/JobProcessed.js +18 -0
- package/dist/Queue/Events/JobProcessed.js.map +1 -0
- package/dist/Queue/Events/JobProcessing.d.ts +12 -0
- package/dist/Queue/Events/JobProcessing.d.ts.map +1 -0
- package/dist/Queue/Events/JobProcessing.js +18 -0
- package/dist/Queue/Events/JobProcessing.js.map +1 -0
- package/dist/Queue/Events/JobQueued.d.ts +14 -0
- package/dist/Queue/Events/JobQueued.d.ts.map +1 -0
- package/dist/Queue/Events/JobQueued.js +22 -0
- package/dist/Queue/Events/JobQueued.js.map +1 -0
- package/dist/Queue/Events/JobRetryRequested.d.ts +12 -0
- package/dist/Queue/Events/JobRetryRequested.d.ts.map +1 -0
- package/dist/Queue/Events/JobRetryRequested.js +20 -0
- package/dist/Queue/Events/JobRetryRequested.js.map +1 -0
- package/dist/Queue/Events/WorkerStopping.d.ts +11 -0
- package/dist/Queue/Events/WorkerStopping.d.ts.map +1 -0
- package/dist/Queue/Events/WorkerStopping.js +18 -0
- package/dist/Queue/Events/WorkerStopping.js.map +1 -0
- package/dist/Queue/Events/index.d.ts +8 -0
- package/dist/Queue/Events/index.d.ts.map +1 -0
- package/dist/Queue/Events/index.js +18 -0
- package/dist/Queue/Events/index.js.map +1 -0
- package/dist/Queue/Failed/DatabaseFailedJobProvider.d.ts +33 -0
- package/dist/Queue/Failed/DatabaseFailedJobProvider.d.ts.map +1 -0
- package/dist/Queue/Failed/DatabaseFailedJobProvider.js +100 -0
- package/dist/Queue/Failed/DatabaseFailedJobProvider.js.map +1 -0
- package/dist/Queue/Failed/FailedJobProvider.d.ts +42 -0
- package/dist/Queue/Failed/FailedJobProvider.d.ts.map +1 -0
- package/dist/Queue/Failed/FailedJobProvider.js +9 -0
- package/dist/Queue/Failed/FailedJobProvider.js.map +1 -0
- package/dist/Queue/Job.d.ts +194 -0
- package/dist/Queue/Job.d.ts.map +1 -0
- package/dist/Queue/Job.js +286 -0
- package/dist/Queue/Job.js.map +1 -0
- package/dist/Queue/JobPayload.d.ts +37 -0
- package/dist/Queue/JobPayload.d.ts.map +1 -0
- package/dist/Queue/JobPayload.js +46 -0
- package/dist/Queue/JobPayload.js.map +1 -0
- package/dist/Queue/Middleware/JobMiddleware.d.ts +29 -0
- package/dist/Queue/Middleware/JobMiddleware.d.ts.map +1 -0
- package/dist/Queue/Middleware/JobMiddleware.js +21 -0
- package/dist/Queue/Middleware/JobMiddleware.js.map +1 -0
- package/dist/Queue/Middleware/RateLimited.d.ts +56 -0
- package/dist/Queue/Middleware/RateLimited.d.ts.map +1 -0
- package/dist/Queue/Middleware/RateLimited.js +83 -0
- package/dist/Queue/Middleware/RateLimited.js.map +1 -0
- package/dist/Queue/Middleware/ThrottlesExceptions.d.ts +71 -0
- package/dist/Queue/Middleware/ThrottlesExceptions.d.ts.map +1 -0
- package/dist/Queue/Middleware/ThrottlesExceptions.js +119 -0
- package/dist/Queue/Middleware/ThrottlesExceptions.js.map +1 -0
- package/dist/Queue/Middleware/WithoutOverlapping.d.ts +64 -0
- package/dist/Queue/Middleware/WithoutOverlapping.d.ts.map +1 -0
- package/dist/Queue/Middleware/WithoutOverlapping.js +103 -0
- package/dist/Queue/Middleware/WithoutOverlapping.js.map +1 -0
- package/dist/Queue/Middleware/index.d.ts +5 -0
- package/dist/Queue/Middleware/index.d.ts.map +1 -0
- package/dist/Queue/Middleware/index.js +10 -0
- package/dist/Queue/Middleware/index.js.map +1 -0
- package/dist/Queue/PendingChain.d.ts +63 -0
- package/dist/Queue/PendingChain.d.ts.map +1 -0
- package/dist/Queue/PendingChain.js +111 -0
- package/dist/Queue/PendingChain.js.map +1 -0
- package/dist/Queue/PendingDispatch.d.ts +66 -0
- package/dist/Queue/PendingDispatch.d.ts.map +1 -0
- package/dist/Queue/PendingDispatch.js +101 -0
- package/dist/Queue/PendingDispatch.js.map +1 -0
- package/dist/Queue/QueueManager.d.ts +151 -0
- package/dist/Queue/QueueManager.d.ts.map +1 -0
- package/dist/Queue/QueueManager.js +227 -0
- package/dist/Queue/QueueManager.js.map +1 -0
- package/dist/Queue/QueueServiceProvider.d.ts +19 -0
- package/dist/Queue/QueueServiceProvider.d.ts.map +1 -0
- package/dist/Queue/QueueServiceProvider.js +75 -0
- package/dist/Queue/QueueServiceProvider.js.map +1 -0
- package/dist/Queue/Workers/Worker.d.ts +99 -0
- package/dist/Queue/Workers/Worker.d.ts.map +1 -0
- package/dist/Queue/Workers/Worker.js +324 -0
- package/dist/Queue/Workers/Worker.js.map +1 -0
- package/dist/Queue/Workers/WorkerOptions.d.ts +62 -0
- package/dist/Queue/Workers/WorkerOptions.d.ts.map +1 -0
- package/dist/Queue/Workers/WorkerOptions.js +23 -0
- package/dist/Queue/Workers/WorkerOptions.js.map +1 -0
- package/dist/Queue/index.d.ts +41 -0
- package/dist/Queue/index.d.ts.map +1 -0
- package/dist/Queue/index.js +67 -0
- package/dist/Queue/index.js.map +1 -0
- package/dist/index.d.ts +75 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +141 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QueueRestartCommand
|
|
3
|
+
*
|
|
4
|
+
* Restart queue worker daemons.
|
|
5
|
+
* Mirrors Laravel's `php artisan queue:restart`.
|
|
6
|
+
*/
|
|
7
|
+
import { Command, CommandOptions } from '../Command';
|
|
8
|
+
import { Application } from '../../Foundation/Application';
|
|
9
|
+
export declare class QueueRestartCommand extends Command {
|
|
10
|
+
protected app: Application;
|
|
11
|
+
signature: string;
|
|
12
|
+
description: string;
|
|
13
|
+
constructor(app: Application);
|
|
14
|
+
handle(_args: string[], _options: CommandOptions): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=QueueRestartCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueRestartCommand.d.ts","sourceRoot":"","sources":["../../../src/Console/Commands/QueueRestartCommand.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,qBAAa,mBAAoB,SAAQ,OAAO;IAIlC,SAAS,CAAC,GAAG,EAAE,WAAW;IAHtC,SAAS,SAAmB;IAC5B,WAAW,SAA0D;gBAE/C,GAAG,EAAE,WAAW;IAIhC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAcvE"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* QueueRestartCommand
|
|
4
|
+
*
|
|
5
|
+
* Restart queue worker daemons.
|
|
6
|
+
* Mirrors Laravel's `php artisan queue:restart`.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.QueueRestartCommand = void 0;
|
|
10
|
+
const Command_1 = require("../Command");
|
|
11
|
+
class QueueRestartCommand extends Command_1.Command {
|
|
12
|
+
app;
|
|
13
|
+
signature = 'queue:restart';
|
|
14
|
+
description = 'Restart queue worker daemons after their current job';
|
|
15
|
+
constructor(app) {
|
|
16
|
+
super();
|
|
17
|
+
this.app = app;
|
|
18
|
+
}
|
|
19
|
+
async handle(_args, _options) {
|
|
20
|
+
// Signal workers to restart by sending SIGUSR2
|
|
21
|
+
// In production, this would use a cache-based signal mechanism
|
|
22
|
+
this.info('Broadcasting queue restart signal...');
|
|
23
|
+
try {
|
|
24
|
+
process.kill(process.pid, 'SIGUSR2');
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
// Process might not support this signal
|
|
28
|
+
}
|
|
29
|
+
this.info('Queue restart signal sent.');
|
|
30
|
+
this.comment('Workers will restart after finishing their current job.');
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.QueueRestartCommand = QueueRestartCommand;
|
|
34
|
+
//# sourceMappingURL=QueueRestartCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueRestartCommand.js","sourceRoot":"","sources":["../../../src/Console/Commands/QueueRestartCommand.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,wCAAqD;AAGrD,MAAa,mBAAoB,SAAQ,iBAAO;IAIxB;IAHtB,SAAS,GAAG,eAAe,CAAC;IAC5B,WAAW,GAAG,sDAAsD,CAAC;IAErE,YAAsB,GAAgB;QACpC,KAAK,EAAE,CAAC;QADY,QAAG,GAAH,GAAG,CAAa;IAEtC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAe,EAAE,QAAwB;QACpD,+CAA+C;QAC/C,+DAA+D;QAC/D,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QAElD,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,wCAAwC;QAC1C,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,yDAAyD,CAAC,CAAC;IAC1E,CAAC;CACF;AAtBD,kDAsBC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QueueRetryCommand
|
|
3
|
+
*
|
|
4
|
+
* Retry a failed queue job.
|
|
5
|
+
* Mirrors Laravel's `php artisan queue:retry`.
|
|
6
|
+
*/
|
|
7
|
+
import { Command, CommandOptions } from '../Command';
|
|
8
|
+
import { Application } from '../../Foundation/Application';
|
|
9
|
+
import type { QueueManager } from '../../Queue/QueueManager';
|
|
10
|
+
import type { FailedJobProvider } from '../../Queue/Failed/FailedJobProvider';
|
|
11
|
+
export declare class QueueRetryCommand extends Command {
|
|
12
|
+
protected app: Application;
|
|
13
|
+
signature: string;
|
|
14
|
+
description: string;
|
|
15
|
+
constructor(app: Application);
|
|
16
|
+
handle(args: string[], _options: CommandOptions): Promise<void>;
|
|
17
|
+
protected retryAll(failer: FailedJobProvider, manager: QueueManager): Promise<void>;
|
|
18
|
+
protected getFailedJobProvider(): FailedJobProvider | null;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=QueueRetryCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueRetryCommand.d.ts","sourceRoot":"","sources":["../../../src/Console/Commands/QueueRetryCommand.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,qBAAa,iBAAkB,SAAQ,OAAO;IAIhC,SAAS,CAAC,GAAG,EAAE,WAAW;IAHtC,SAAS,SAAsB;IAC/B,WAAW,SAAuD;gBAE5C,GAAG,EAAE,WAAW;IAIhC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;cAuCrD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBzF,SAAS,CAAC,oBAAoB,IAAI,iBAAiB,GAAG,IAAI;CAO3D"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* QueueRetryCommand
|
|
4
|
+
*
|
|
5
|
+
* Retry a failed queue job.
|
|
6
|
+
* Mirrors Laravel's `php artisan queue:retry`.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.QueueRetryCommand = void 0;
|
|
10
|
+
const Command_1 = require("../Command");
|
|
11
|
+
class QueueRetryCommand extends Command_1.Command {
|
|
12
|
+
app;
|
|
13
|
+
signature = 'queue:retry <id>';
|
|
14
|
+
description = 'Retry a failed queue job (use "all" to retry all)';
|
|
15
|
+
constructor(app) {
|
|
16
|
+
super();
|
|
17
|
+
this.app = app;
|
|
18
|
+
}
|
|
19
|
+
async handle(args, _options) {
|
|
20
|
+
const id = args[0];
|
|
21
|
+
if (!id) {
|
|
22
|
+
this.error('Please specify a job ID or "all" to retry all failed jobs.');
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
const failer = this.getFailedJobProvider();
|
|
26
|
+
if (!failer) {
|
|
27
|
+
this.error('No failed job provider configured.');
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
const manager = this.app.make('queue');
|
|
31
|
+
if (id === 'all') {
|
|
32
|
+
await this.retryAll(failer, manager);
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const failedJob = await failer.find(id);
|
|
36
|
+
if (!failedJob) {
|
|
37
|
+
this.error(`Failed job [${id}] not found.`);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
// Push the job back onto the queue
|
|
41
|
+
const driver = manager.connection(failedJob.connection);
|
|
42
|
+
await driver.pushRaw(failedJob.payload, failedJob.queue);
|
|
43
|
+
// Remove from failed jobs
|
|
44
|
+
await failer.forget(failedJob.id);
|
|
45
|
+
this.info(`The failed job [${failedJob.uuid}] has been pushed back onto the queue.`);
|
|
46
|
+
}
|
|
47
|
+
async retryAll(failer, manager) {
|
|
48
|
+
const failedJobs = await failer.all();
|
|
49
|
+
if (failedJobs.length === 0) {
|
|
50
|
+
this.info('No failed jobs to retry.');
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
let retried = 0;
|
|
54
|
+
for (const failedJob of failedJobs) {
|
|
55
|
+
try {
|
|
56
|
+
const driver = manager.connection(failedJob.connection);
|
|
57
|
+
await driver.pushRaw(failedJob.payload, failedJob.queue);
|
|
58
|
+
await failer.forget(failedJob.id);
|
|
59
|
+
retried++;
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
this.error(`Failed to retry job [${failedJob.uuid}]: ${error.message}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
this.info(`Retried ${retried} failed job(s).`);
|
|
66
|
+
}
|
|
67
|
+
getFailedJobProvider() {
|
|
68
|
+
try {
|
|
69
|
+
return this.app.make('queue.failer');
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.QueueRetryCommand = QueueRetryCommand;
|
|
77
|
+
//# sourceMappingURL=QueueRetryCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueRetryCommand.js","sourceRoot":"","sources":["../../../src/Console/Commands/QueueRetryCommand.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,wCAAqD;AAKrD,MAAa,iBAAkB,SAAQ,iBAAO;IAItB;IAHtB,SAAS,GAAG,kBAAkB,CAAC;IAC/B,WAAW,GAAG,mDAAmD,CAAC;IAElE,YAAsB,GAAgB;QACpC,KAAK,EAAE,CAAC;QADY,QAAG,GAAH,GAAG,CAAa;IAEtC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAc,EAAE,QAAwB;QACnD,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAEnB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,IAAI,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE3C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACjD,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAe,OAAO,CAAC,CAAC;QAErD,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAExC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,mCAAmC;QACnC,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QAEzD,0BAA0B;QAC1B,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAElC,IAAI,CAAC,IAAI,CAAC,mBAAmB,SAAS,CAAC,IAAI,wCAAwC,CAAC,CAAC;IACvF,CAAC;IAES,KAAK,CAAC,QAAQ,CAAC,MAAyB,EAAE,OAAqB;QACvE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;QAEtC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBACxD,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;gBACzD,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAClC,OAAO,EAAE,CAAC;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,wBAAwB,SAAS,CAAC,IAAI,MAAO,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YACrF,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,OAAO,iBAAiB,CAAC,CAAC;IACjD,CAAC;IAES,oBAAoB;QAC5B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAoB,cAAc,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF;AA9ED,8CA8EC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QueueTableCommand
|
|
3
|
+
*
|
|
4
|
+
* Create a migration for the queue jobs database table.
|
|
5
|
+
* Mirrors Laravel's `php artisan queue:table`.
|
|
6
|
+
*/
|
|
7
|
+
import { Command, CommandOptions } from '../Command';
|
|
8
|
+
import { Application } from '../../Foundation/Application';
|
|
9
|
+
export declare class QueueTableCommand extends Command {
|
|
10
|
+
protected app: Application;
|
|
11
|
+
signature: string;
|
|
12
|
+
description: string;
|
|
13
|
+
constructor(app: Application);
|
|
14
|
+
handle(_args: string[], options: CommandOptions): Promise<void>;
|
|
15
|
+
protected getStub(): string;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=QueueTableCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueTableCommand.d.ts","sourceRoot":"","sources":["../../../src/Console/Commands/QueueTableCommand.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAI3D,qBAAa,iBAAkB,SAAQ,OAAO;IAIhC,SAAS,CAAC,GAAG,EAAE,WAAW;IAHtC,SAAS,SAAiB;IAC1B,WAAW,SAA0D;gBAE/C,GAAG,EAAE,WAAW;IAIhC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAcrE,SAAS,CAAC,OAAO,IAAI,MAAM;CAuB5B"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* QueueTableCommand
|
|
4
|
+
*
|
|
5
|
+
* Create a migration for the queue jobs database table.
|
|
6
|
+
* Mirrors Laravel's `php artisan queue:table`.
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.QueueTableCommand = void 0;
|
|
43
|
+
const Command_1 = require("../Command");
|
|
44
|
+
const fs = __importStar(require("fs/promises"));
|
|
45
|
+
const path = __importStar(require("path"));
|
|
46
|
+
class QueueTableCommand extends Command_1.Command {
|
|
47
|
+
app;
|
|
48
|
+
signature = 'queue:table';
|
|
49
|
+
description = 'Create a migration for the queue jobs database table';
|
|
50
|
+
constructor(app) {
|
|
51
|
+
super();
|
|
52
|
+
this.app = app;
|
|
53
|
+
}
|
|
54
|
+
async handle(_args, options) {
|
|
55
|
+
const migrationsPath = options.path || this.app.databasePath('migrations');
|
|
56
|
+
await fs.mkdir(migrationsPath, { recursive: true });
|
|
57
|
+
const timestamp = new Date().toISOString().replace(/[-:T]/g, '').slice(0, 14);
|
|
58
|
+
const fileName = `${timestamp}_create_jobs_table.ts`;
|
|
59
|
+
const filePath = path.join(migrationsPath, fileName);
|
|
60
|
+
await fs.writeFile(filePath, this.getStub());
|
|
61
|
+
this.info(`Migration created successfully: ${filePath}`);
|
|
62
|
+
this.comment('Run "npx orchestr migrate" to create the table.');
|
|
63
|
+
}
|
|
64
|
+
getStub() {
|
|
65
|
+
return `import { Migration } from '@orchestr-sh/orchestr';
|
|
66
|
+
import type { SchemaBuilder } from '@orchestr-sh/orchestr';
|
|
67
|
+
|
|
68
|
+
export default class CreateJobsTable extends Migration {
|
|
69
|
+
async up(schema: SchemaBuilder): Promise<void> {
|
|
70
|
+
await schema.create('jobs', (table) => {
|
|
71
|
+
table.bigIncrements('id');
|
|
72
|
+
table.string('queue').index();
|
|
73
|
+
table.text('payload');
|
|
74
|
+
table.integer('attempts').defaultTo(0);
|
|
75
|
+
table.integer('reserved_at').nullable();
|
|
76
|
+
table.integer('available_at');
|
|
77
|
+
table.integer('created_at');
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
async down(schema: SchemaBuilder): Promise<void> {
|
|
82
|
+
await schema.drop('jobs');
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
`;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
exports.QueueTableCommand = QueueTableCommand;
|
|
89
|
+
//# sourceMappingURL=QueueTableCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueTableCommand.js","sourceRoot":"","sources":["../../../src/Console/Commands/QueueTableCommand.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,wCAAqD;AAErD,gDAAkC;AAClC,2CAA6B;AAE7B,MAAa,iBAAkB,SAAQ,iBAAO;IAItB;IAHtB,SAAS,GAAG,aAAa,CAAC;IAC1B,WAAW,GAAG,sDAAsD,CAAC;IAErE,YAAsB,GAAgB;QACpC,KAAK,EAAE,CAAC;QADY,QAAG,GAAH,GAAG,CAAa;IAEtC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAe,EAAE,OAAuB;QACnD,MAAM,cAAc,GAAI,OAAO,CAAC,IAAe,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACvF,MAAM,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEpD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9E,MAAM,QAAQ,GAAG,GAAG,SAAS,uBAAuB,CAAC;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QAErD,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAE7C,IAAI,CAAC,IAAI,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC;IAClE,CAAC;IAES,OAAO;QACf,OAAO;;;;;;;;;;;;;;;;;;;;CAoBV,CAAC;IACA,CAAC;CACF;AA7CD,8CA6CC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QueueWorkCommand
|
|
3
|
+
*
|
|
4
|
+
* Start processing jobs on the queue as a daemon.
|
|
5
|
+
* Mirrors Laravel's `php artisan queue:work`.
|
|
6
|
+
*/
|
|
7
|
+
import { Command, CommandOptions } from '../Command';
|
|
8
|
+
import { Application } from '../../Foundation/Application';
|
|
9
|
+
export declare class QueueWorkCommand extends Command {
|
|
10
|
+
protected app: Application;
|
|
11
|
+
signature: string;
|
|
12
|
+
description: string;
|
|
13
|
+
constructor(app: Application);
|
|
14
|
+
handle(args: string[], options: CommandOptions): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=QueueWorkCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueWorkCommand.d.ts","sourceRoot":"","sources":["../../../src/Console/Commands/QueueWorkCommand.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAI3D,qBAAa,gBAAiB,SAAQ,OAAO;IAI/B,SAAS,CAAC,GAAG,EAAE,WAAW;IAHtC,SAAS,SAA6B;IACtC,WAAW,SAAoD;gBAEzC,GAAG,EAAE,WAAW;IAIhC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAmCrE"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* QueueWorkCommand
|
|
4
|
+
*
|
|
5
|
+
* Start processing jobs on the queue as a daemon.
|
|
6
|
+
* Mirrors Laravel's `php artisan queue:work`.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.QueueWorkCommand = void 0;
|
|
10
|
+
const Command_1 = require("../Command");
|
|
11
|
+
class QueueWorkCommand extends Command_1.Command {
|
|
12
|
+
app;
|
|
13
|
+
signature = 'queue:work [connection]';
|
|
14
|
+
description = 'Start processing jobs on the queue as a daemon';
|
|
15
|
+
constructor(app) {
|
|
16
|
+
super();
|
|
17
|
+
this.app = app;
|
|
18
|
+
}
|
|
19
|
+
async handle(args, options) {
|
|
20
|
+
const manager = this.app.make('queue');
|
|
21
|
+
const worker = this.app.make('queue.worker');
|
|
22
|
+
const connection = args[0] || manager.getDefaultConnection();
|
|
23
|
+
const queues = options.queue || 'default';
|
|
24
|
+
const once = options.once === true || options.once === 'true';
|
|
25
|
+
this.info(`[${new Date().toISOString()}] Processing jobs from the [${queues}] queue(s) on [${connection}] connection.`);
|
|
26
|
+
const workerOptions = {
|
|
27
|
+
name: options.name || 'default',
|
|
28
|
+
sleep: Number(options.sleep) || 3,
|
|
29
|
+
tries: Number(options.tries) || 1,
|
|
30
|
+
timeout: Number(options.timeout) || 60,
|
|
31
|
+
memory: Number(options.memory) || 128,
|
|
32
|
+
maxJobs: Number(options['max-jobs']) || 0,
|
|
33
|
+
maxTime: Number(options['max-time']) || 0,
|
|
34
|
+
force: options.force === true || options.force === 'true',
|
|
35
|
+
stopWhenEmpty: options['stop-when-empty'] === true || options['stop-when-empty'] === 'true',
|
|
36
|
+
backoff: Number(options.backoff) || 0,
|
|
37
|
+
rest: Number(options.rest) || 0,
|
|
38
|
+
};
|
|
39
|
+
if (once) {
|
|
40
|
+
const processed = await worker.runOnce(connection, queues, workerOptions);
|
|
41
|
+
if (!processed) {
|
|
42
|
+
this.comment('No jobs available.');
|
|
43
|
+
}
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
await worker.daemon(connection, queues, workerOptions);
|
|
47
|
+
this.info('Worker stopped.');
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.QueueWorkCommand = QueueWorkCommand;
|
|
51
|
+
//# sourceMappingURL=QueueWorkCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueWorkCommand.js","sourceRoot":"","sources":["../../../src/Console/Commands/QueueWorkCommand.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,wCAAqD;AAKrD,MAAa,gBAAiB,SAAQ,iBAAO;IAIrB;IAHtB,SAAS,GAAG,yBAAyB,CAAC;IACtC,WAAW,GAAG,gDAAgD,CAAC;IAE/D,YAAsB,GAAgB;QACpC,KAAK,EAAE,CAAC;QADY,QAAG,GAAH,GAAG,CAAa;IAEtC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAc,EAAE,OAAuB;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAe,OAAO,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAS,cAAc,CAAC,CAAC;QAErD,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAI,OAAO,CAAC,KAAgB,IAAI,SAAS,CAAC;QACtD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC;QAE9D,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,+BAA+B,MAAM,kBAAkB,UAAU,eAAe,CAAC,CAAC;QAExH,MAAM,aAAa,GAAG;YACpB,IAAI,EAAG,OAAO,CAAC,IAAe,IAAI,SAAS;YAC3C,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;YACjC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE;YACtC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG;YACrC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;YACzC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;YACzC,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM;YACzD,aAAa,EAAE,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,iBAAiB,CAAC,KAAK,MAAM;YAC3F,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;SAChC,CAAC;QAEF,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;YAC1E,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;YACrC,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC/B,CAAC;CACF;AA3CD,4CA2CC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bus Facade
|
|
3
|
+
*
|
|
4
|
+
* Provides static access to the command bus for dispatching jobs,
|
|
5
|
+
* chains, and batches.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* // Dispatch a job
|
|
10
|
+
* await Bus.dispatch(new ProcessPodcast(podcastId));
|
|
11
|
+
*
|
|
12
|
+
* // Dispatch synchronously
|
|
13
|
+
* await Bus.dispatchSync(new ProcessPodcast(podcastId));
|
|
14
|
+
*
|
|
15
|
+
* // Chain jobs
|
|
16
|
+
* await Bus.chain([
|
|
17
|
+
* new ProcessPodcast(id),
|
|
18
|
+
* new OptimizePodcast(id),
|
|
19
|
+
* new ReleasePodcast(id),
|
|
20
|
+
* ]).dispatch();
|
|
21
|
+
*
|
|
22
|
+
* // Batch jobs
|
|
23
|
+
* const batch = await Bus.batch([
|
|
24
|
+
* new ProcessPodcast(1),
|
|
25
|
+
* new ProcessPodcast(2),
|
|
26
|
+
* ])
|
|
27
|
+
* .then((batch) => console.log('Done'))
|
|
28
|
+
* .catch((batch, error) => console.error('Failed'))
|
|
29
|
+
* .dispatch();
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
import { Facade } from '../Support/Facade';
|
|
33
|
+
import type { QueueManager } from '../Queue/QueueManager';
|
|
34
|
+
import type { Job } from '../Queue/Job';
|
|
35
|
+
import { PendingChain } from '../Queue/PendingChain';
|
|
36
|
+
import { PendingBatch } from '../Queue/Batching/PendingBatch';
|
|
37
|
+
declare class BusFacadeClass extends Facade {
|
|
38
|
+
protected static getFacadeAccessor(): string;
|
|
39
|
+
/**
|
|
40
|
+
* Dispatch a job to the queue
|
|
41
|
+
*/
|
|
42
|
+
static dispatch(job: Job): Promise<string>;
|
|
43
|
+
/**
|
|
44
|
+
* Dispatch a job synchronously
|
|
45
|
+
*/
|
|
46
|
+
static dispatchSync(job: Job): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Dispatch a job immediately (alias for dispatchSync)
|
|
49
|
+
*/
|
|
50
|
+
static dispatchNow(job: Job): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Create a new chain of queueable jobs
|
|
53
|
+
*/
|
|
54
|
+
static chain(jobs: Job[]): PendingChain;
|
|
55
|
+
/**
|
|
56
|
+
* Create a new batch of queueable jobs
|
|
57
|
+
*/
|
|
58
|
+
static batch(jobs: Job[]): PendingBatch;
|
|
59
|
+
}
|
|
60
|
+
export declare const Bus: typeof BusFacadeClass & QueueManager;
|
|
61
|
+
export {};
|
|
62
|
+
//# sourceMappingURL=Bus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Bus.d.ts","sourceRoot":"","sources":["../../src/Facades/Bus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,cAAM,cAAe,SAAQ,MAAM;IACjC,SAAS,CAAC,MAAM,CAAC,iBAAiB,IAAI,MAAM;IAI5C;;OAEG;WACU,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAKhD;;OAEG;WACU,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlD;;OAEG;WACU,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,YAAY;IAKvC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,YAAY;CAIxC;AAED,eAAO,MAAM,GAAG,EAyBC,OAAO,cAAc,GAAG,YAAY,CAAC"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Bus Facade
|
|
4
|
+
*
|
|
5
|
+
* Provides static access to the command bus for dispatching jobs,
|
|
6
|
+
* chains, and batches.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* // Dispatch a job
|
|
11
|
+
* await Bus.dispatch(new ProcessPodcast(podcastId));
|
|
12
|
+
*
|
|
13
|
+
* // Dispatch synchronously
|
|
14
|
+
* await Bus.dispatchSync(new ProcessPodcast(podcastId));
|
|
15
|
+
*
|
|
16
|
+
* // Chain jobs
|
|
17
|
+
* await Bus.chain([
|
|
18
|
+
* new ProcessPodcast(id),
|
|
19
|
+
* new OptimizePodcast(id),
|
|
20
|
+
* new ReleasePodcast(id),
|
|
21
|
+
* ]).dispatch();
|
|
22
|
+
*
|
|
23
|
+
* // Batch jobs
|
|
24
|
+
* const batch = await Bus.batch([
|
|
25
|
+
* new ProcessPodcast(1),
|
|
26
|
+
* new ProcessPodcast(2),
|
|
27
|
+
* ])
|
|
28
|
+
* .then((batch) => console.log('Done'))
|
|
29
|
+
* .catch((batch, error) => console.error('Failed'))
|
|
30
|
+
* .dispatch();
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
|
+
exports.Bus = void 0;
|
|
35
|
+
const Facade_1 = require("../Support/Facade");
|
|
36
|
+
const PendingChain_1 = require("../Queue/PendingChain");
|
|
37
|
+
const PendingBatch_1 = require("../Queue/Batching/PendingBatch");
|
|
38
|
+
class BusFacadeClass extends Facade_1.Facade {
|
|
39
|
+
static getFacadeAccessor() {
|
|
40
|
+
return 'queue';
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Dispatch a job to the queue
|
|
44
|
+
*/
|
|
45
|
+
static async dispatch(job) {
|
|
46
|
+
const manager = this.getFacadeRoot();
|
|
47
|
+
return manager.dispatch(job);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Dispatch a job synchronously
|
|
51
|
+
*/
|
|
52
|
+
static async dispatchSync(job) {
|
|
53
|
+
const manager = this.getFacadeRoot();
|
|
54
|
+
return manager.dispatchSync(job);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Dispatch a job immediately (alias for dispatchSync)
|
|
58
|
+
*/
|
|
59
|
+
static async dispatchNow(job) {
|
|
60
|
+
return this.dispatchSync(job);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Create a new chain of queueable jobs
|
|
64
|
+
*/
|
|
65
|
+
static chain(jobs) {
|
|
66
|
+
const manager = this.getFacadeRoot();
|
|
67
|
+
return new PendingChain_1.PendingChain(manager, jobs);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Create a new batch of queueable jobs
|
|
71
|
+
*/
|
|
72
|
+
static batch(jobs) {
|
|
73
|
+
const app = this.getFacadeApplication();
|
|
74
|
+
return new PendingBatch_1.PendingBatch(app, jobs);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.Bus = new Proxy(BusFacadeClass, {
|
|
78
|
+
get(target, prop) {
|
|
79
|
+
if (prop in target) {
|
|
80
|
+
const value = target[prop];
|
|
81
|
+
if (typeof value === 'function') {
|
|
82
|
+
return value.bind(target);
|
|
83
|
+
}
|
|
84
|
+
return value;
|
|
85
|
+
}
|
|
86
|
+
try {
|
|
87
|
+
const root = target.getFacadeRoot();
|
|
88
|
+
if (root && prop in root) {
|
|
89
|
+
const value = root[prop];
|
|
90
|
+
if (typeof value === 'function') {
|
|
91
|
+
return (...args) => value.apply(root, args);
|
|
92
|
+
}
|
|
93
|
+
return value;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
// Facade root not available yet
|
|
98
|
+
}
|
|
99
|
+
return undefined;
|
|
100
|
+
},
|
|
101
|
+
});
|
|
102
|
+
//# sourceMappingURL=Bus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Bus.js","sourceRoot":"","sources":["../../src/Facades/Bus.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;;;AAEH,8CAA2C;AAG3C,wDAAqD;AACrD,iEAA8D;AAE9D,MAAM,cAAe,SAAQ,eAAM;IACvB,MAAM,CAAC,iBAAiB;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAQ;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAkB,CAAC;QACrD,OAAO,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,GAAQ;QAChC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAkB,CAAC;QACrD,OAAO,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,GAAQ;QAC/B,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAW;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAkB,CAAC;QACrD,OAAO,IAAI,2BAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAW;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACxC,OAAO,IAAI,2BAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;CACF;AAEY,QAAA,GAAG,GAAG,IAAI,KAAK,CAAC,cAAc,EAAE;IAC3C,GAAG,CAAC,MAAM,EAAE,IAAI;QACd,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;YACnB,MAAM,KAAK,GAAI,MAAc,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAI,MAAc,CAAC,aAAa,EAAkB,CAAC;YAC7D,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;gBACzB,MAAM,KAAK,GAAI,IAAY,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;oBAChC,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACrD,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gCAAgC;QAClC,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF,CAAoD,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Facade
|
|
3
|
+
*
|
|
4
|
+
* Provides static access to the cache manager and default store.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import { Cache } from '@orchestr-sh/orchestr';
|
|
9
|
+
*
|
|
10
|
+
* // Basic operations
|
|
11
|
+
* await Cache.put('key', 'value', 3600);
|
|
12
|
+
* const value = await Cache.get('key');
|
|
13
|
+
* await Cache.forget('key');
|
|
14
|
+
*
|
|
15
|
+
* // Remember pattern
|
|
16
|
+
* const user = await Cache.remember('user:1', 3600, async () => {
|
|
17
|
+
* return await fetchUser(1);
|
|
18
|
+
* });
|
|
19
|
+
*
|
|
20
|
+
* // Switch stores
|
|
21
|
+
* await Cache.store('redis').put('key', 'value', 3600);
|
|
22
|
+
*
|
|
23
|
+
* // Tags
|
|
24
|
+
* await Cache.tags(['people', 'artists']).put('John', data, 3600);
|
|
25
|
+
* await Cache.tags('people').flush();
|
|
26
|
+
*
|
|
27
|
+
* // Locks
|
|
28
|
+
* await Cache.lock('processing', 120).get(async () => {
|
|
29
|
+
* // critical section
|
|
30
|
+
* });
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
import { Facade } from '../Support/Facade';
|
|
34
|
+
import type { CacheManager } from '../Cache/CacheManager';
|
|
35
|
+
import type { Repository } from '../Cache/Repository';
|
|
36
|
+
declare class CacheFacadeClass extends Facade {
|
|
37
|
+
protected static getFacadeAccessor(): string;
|
|
38
|
+
}
|
|
39
|
+
export declare const Cache: typeof CacheFacadeClass & CacheManager & Repository;
|
|
40
|
+
export {};
|
|
41
|
+
//# sourceMappingURL=Cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Cache.d.ts","sourceRoot":"","sources":["../../src/Facades/Cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,cAAM,gBAAiB,SAAQ,MAAM;IACnC,SAAS,CAAC,MAAM,CAAC,iBAAiB,IAAI,MAAM;CAG7C;AAED,eAAO,MAAM,KAAK,EAqCD,OAAO,gBAAgB,GAAG,YAAY,GAAG,UAAU,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Cache Facade
|
|
4
|
+
*
|
|
5
|
+
* Provides static access to the cache manager and default store.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import { Cache } from '@orchestr-sh/orchestr';
|
|
10
|
+
*
|
|
11
|
+
* // Basic operations
|
|
12
|
+
* await Cache.put('key', 'value', 3600);
|
|
13
|
+
* const value = await Cache.get('key');
|
|
14
|
+
* await Cache.forget('key');
|
|
15
|
+
*
|
|
16
|
+
* // Remember pattern
|
|
17
|
+
* const user = await Cache.remember('user:1', 3600, async () => {
|
|
18
|
+
* return await fetchUser(1);
|
|
19
|
+
* });
|
|
20
|
+
*
|
|
21
|
+
* // Switch stores
|
|
22
|
+
* await Cache.store('redis').put('key', 'value', 3600);
|
|
23
|
+
*
|
|
24
|
+
* // Tags
|
|
25
|
+
* await Cache.tags(['people', 'artists']).put('John', data, 3600);
|
|
26
|
+
* await Cache.tags('people').flush();
|
|
27
|
+
*
|
|
28
|
+
* // Locks
|
|
29
|
+
* await Cache.lock('processing', 120).get(async () => {
|
|
30
|
+
* // critical section
|
|
31
|
+
* });
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.Cache = void 0;
|
|
36
|
+
const Facade_1 = require("../Support/Facade");
|
|
37
|
+
class CacheFacadeClass extends Facade_1.Facade {
|
|
38
|
+
static getFacadeAccessor() {
|
|
39
|
+
return 'cache';
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.Cache = new Proxy(CacheFacadeClass, {
|
|
43
|
+
get(target, prop) {
|
|
44
|
+
// First check if it's a static method on the facade class itself
|
|
45
|
+
if (prop in target) {
|
|
46
|
+
const value = target[prop];
|
|
47
|
+
if (typeof value === 'function') {
|
|
48
|
+
return value.bind(target);
|
|
49
|
+
}
|
|
50
|
+
return value;
|
|
51
|
+
}
|
|
52
|
+
// Then try to get from the facade root (the CacheManager instance)
|
|
53
|
+
try {
|
|
54
|
+
const root = target.getFacadeRoot();
|
|
55
|
+
if (root && prop in root) {
|
|
56
|
+
const value = root[prop];
|
|
57
|
+
if (typeof value === 'function') {
|
|
58
|
+
return (...args) => value.apply(root, args);
|
|
59
|
+
}
|
|
60
|
+
return value;
|
|
61
|
+
}
|
|
62
|
+
// Also proxy to default store for convenience
|
|
63
|
+
const store = root.store();
|
|
64
|
+
if (store && prop in store) {
|
|
65
|
+
const value = store[prop];
|
|
66
|
+
if (typeof value === 'function') {
|
|
67
|
+
return (...args) => value.apply(store, args);
|
|
68
|
+
}
|
|
69
|
+
return value;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
// Facade root not available yet
|
|
74
|
+
}
|
|
75
|
+
return undefined;
|
|
76
|
+
},
|
|
77
|
+
});
|
|
78
|
+
//# sourceMappingURL=Cache.js.map
|