atomic-queues 1.4.1 → 1.6.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.
- package/README.md +300 -283
- package/dist/decorators/constants.d.ts +17 -0
- package/dist/decorators/constants.d.ts.map +1 -0
- package/dist/decorators/constants.js +23 -0
- package/dist/decorators/constants.js.map +1 -0
- package/dist/decorators/entity.decorators.d.ts +88 -0
- package/dist/decorators/entity.decorators.d.ts.map +1 -0
- package/dist/decorators/entity.decorators.js +150 -0
- package/dist/decorators/entity.decorators.js.map +1 -0
- package/dist/decorators/index.d.ts +9 -1
- package/dist/decorators/index.d.ts.map +1 -1
- package/dist/decorators/index.js +9 -1
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/interfaces.d.ts +130 -0
- package/dist/decorators/interfaces.d.ts.map +1 -0
- package/dist/decorators/interfaces.js +3 -0
- package/dist/decorators/interfaces.js.map +1 -0
- package/dist/decorators/job.decorators.d.ts +60 -0
- package/dist/decorators/job.decorators.d.ts.map +1 -0
- package/dist/decorators/job.decorators.js +97 -0
- package/dist/decorators/job.decorators.js.map +1 -0
- package/dist/decorators/legacy.decorators.d.ts +36 -0
- package/dist/decorators/legacy.decorators.d.ts.map +1 -0
- package/dist/decorators/legacy.decorators.js +61 -0
- package/dist/decorators/legacy.decorators.js.map +1 -0
- package/dist/decorators/metadata-readers.d.ts +31 -0
- package/dist/decorators/metadata-readers.d.ts.map +1 -0
- package/dist/decorators/metadata-readers.js +53 -0
- package/dist/decorators/metadata-readers.js.map +1 -0
- package/dist/decorators/registry.d.ts +2 -0
- package/dist/decorators/registry.d.ts.map +1 -0
- package/dist/decorators/registry.js +6 -0
- package/dist/decorators/registry.js.map +1 -0
- package/dist/decorators/scaler.decorators.d.ts +65 -0
- package/dist/decorators/scaler.decorators.d.ts.map +1 -0
- package/dist/decorators/scaler.decorators.js +103 -0
- package/dist/decorators/scaler.decorators.js.map +1 -0
- package/dist/decorators/type-guards.d.ts +18 -0
- package/dist/decorators/type-guards.d.ts.map +1 -0
- package/dist/decorators/type-guards.js +32 -0
- package/dist/decorators/type-guards.js.map +1 -0
- package/dist/decorators/utils.d.ts +20 -0
- package/dist/decorators/utils.d.ts.map +1 -0
- package/dist/decorators/utils.js +98 -0
- package/dist/decorators/utils.js.map +1 -0
- package/dist/decorators/worker.decorators.d.ts +58 -0
- package/dist/decorators/worker.decorators.d.ts.map +1 -0
- package/dist/decorators/worker.decorators.js +92 -0
- package/dist/decorators/worker.decorators.js.map +1 -0
- package/dist/domain/interfaces/config.interfaces.d.ts +188 -0
- package/dist/domain/interfaces/config.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/config.interfaces.js +3 -0
- package/dist/domain/interfaces/config.interfaces.js.map +1 -0
- package/dist/domain/interfaces/cqrs.interfaces.d.ts +7 -0
- package/dist/domain/interfaces/cqrs.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/cqrs.interfaces.js +3 -0
- package/dist/domain/interfaces/cqrs.interfaces.js.map +1 -0
- package/dist/domain/interfaces/event.interfaces.d.ts +71 -0
- package/dist/domain/interfaces/event.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/event.interfaces.js +3 -0
- package/dist/domain/interfaces/event.interfaces.js.map +1 -0
- package/dist/domain/interfaces/index-tracking.interfaces.d.ts +69 -0
- package/dist/domain/interfaces/index-tracking.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/index-tracking.interfaces.js +3 -0
- package/dist/domain/interfaces/index-tracking.interfaces.js.map +1 -0
- package/dist/domain/interfaces/index.d.ts +12 -0
- package/dist/domain/interfaces/index.d.ts.map +1 -0
- package/dist/domain/interfaces/index.js +28 -0
- package/dist/domain/interfaces/index.js.map +1 -0
- package/dist/domain/interfaces/job.interfaces.d.ts +76 -0
- package/dist/domain/interfaces/job.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/job.interfaces.js +3 -0
- package/dist/domain/interfaces/job.interfaces.js.map +1 -0
- package/dist/domain/interfaces/lock.interfaces.d.ts +54 -0
- package/dist/domain/interfaces/lock.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/lock.interfaces.js +3 -0
- package/dist/domain/interfaces/lock.interfaces.js.map +1 -0
- package/dist/domain/interfaces/process.interfaces.d.ts +44 -0
- package/dist/domain/interfaces/process.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/process.interfaces.js +3 -0
- package/dist/domain/interfaces/process.interfaces.js.map +1 -0
- package/dist/domain/interfaces/queue.interfaces.d.ts +46 -0
- package/dist/domain/interfaces/queue.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/queue.interfaces.js +3 -0
- package/dist/domain/interfaces/queue.interfaces.js.map +1 -0
- package/dist/domain/interfaces/scaling.interfaces.d.ts +62 -0
- package/dist/domain/interfaces/scaling.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/scaling.interfaces.js +3 -0
- package/dist/domain/interfaces/scaling.interfaces.js.map +1 -0
- package/dist/domain/interfaces/utility.types.d.ts +15 -0
- package/dist/domain/interfaces/utility.types.d.ts.map +1 -0
- package/dist/domain/interfaces/utility.types.js +3 -0
- package/dist/domain/interfaces/utility.types.js.map +1 -0
- package/dist/domain/interfaces/worker.interfaces.d.ts +120 -0
- package/dist/domain/interfaces/worker.interfaces.d.ts.map +1 -0
- package/dist/domain/interfaces/worker.interfaces.js +3 -0
- package/dist/domain/interfaces/worker.interfaces.js.map +1 -0
- package/dist/module/atomic-queues.module.d.ts.map +1 -1
- package/dist/module/atomic-queues.module.js +5 -0
- package/dist/module/atomic-queues.module.js.map +1 -1
- package/dist/services/cron-manager/cron-manager.service.d.ts +5 -4
- package/dist/services/cron-manager/cron-manager.service.d.ts.map +1 -1
- package/dist/services/cron-manager/cron-manager.service.js +26 -57
- package/dist/services/cron-manager/cron-manager.service.js.map +1 -1
- package/dist/services/index-manager/index-manager.service.d.ts +0 -4
- package/dist/services/index-manager/index-manager.service.d.ts.map +1 -1
- package/dist/services/index-manager/index-manager.service.js +4 -16
- package/dist/services/index-manager/index-manager.service.js.map +1 -1
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/processor-discovery/decorator-discovery.service.d.ts +40 -0
- package/dist/services/processor-discovery/decorator-discovery.service.d.ts.map +1 -0
- package/dist/services/processor-discovery/decorator-discovery.service.js +191 -0
- package/dist/services/processor-discovery/decorator-discovery.service.js.map +1 -0
- package/dist/services/processor-discovery/index.d.ts +4 -0
- package/dist/services/processor-discovery/index.d.ts.map +1 -1
- package/dist/services/processor-discovery/index.js +4 -0
- package/dist/services/processor-discovery/index.js.map +1 -1
- package/dist/services/processor-discovery/processor-discovery.service.d.ts +30 -138
- package/dist/services/processor-discovery/processor-discovery.service.d.ts.map +1 -1
- package/dist/services/processor-discovery/processor-discovery.service.js +125 -502
- package/dist/services/processor-discovery/processor-discovery.service.js.map +1 -1
- package/dist/services/processor-discovery/processor-registry.d.ts +58 -0
- package/dist/services/processor-discovery/processor-registry.d.ts.map +1 -0
- package/dist/services/processor-discovery/processor-registry.js +74 -0
- package/dist/services/processor-discovery/processor-registry.js.map +1 -0
- package/dist/services/processor-discovery/scaling-registration.service.d.ts +60 -0
- package/dist/services/processor-discovery/scaling-registration.service.d.ts.map +1 -0
- package/dist/services/processor-discovery/scaling-registration.service.js +261 -0
- package/dist/services/processor-discovery/scaling-registration.service.js.map +1 -0
- package/dist/services/processor-discovery/worker-factory.service.d.ts +54 -0
- package/dist/services/processor-discovery/worker-factory.service.d.ts.map +1 -0
- package/dist/services/processor-discovery/worker-factory.service.js +185 -0
- package/dist/services/processor-discovery/worker-factory.service.js.map +1 -0
- package/dist/services/queue-bus/entity-target.d.ts +58 -0
- package/dist/services/queue-bus/entity-target.d.ts.map +1 -0
- package/dist/services/queue-bus/entity-target.js +109 -0
- package/dist/services/queue-bus/entity-target.js.map +1 -0
- package/dist/services/queue-bus/index.d.ts +4 -0
- package/dist/services/queue-bus/index.d.ts.map +1 -1
- package/dist/services/queue-bus/index.js +4 -0
- package/dist/services/queue-bus/index.js.map +1 -1
- package/dist/services/queue-bus/queue-bus.service.d.ts +9 -145
- package/dist/services/queue-bus/queue-bus.service.d.ts.map +1 -1
- package/dist/services/queue-bus/queue-bus.service.js +23 -311
- package/dist/services/queue-bus/queue-bus.service.js.map +1 -1
- package/dist/services/queue-bus/queue-bus.types.d.ts +40 -0
- package/dist/services/queue-bus/queue-bus.types.d.ts.map +1 -0
- package/dist/services/queue-bus/queue-bus.types.js +3 -0
- package/dist/services/queue-bus/queue-bus.types.js.map +1 -0
- package/dist/services/queue-bus/queue-bus.utils.d.ts +34 -0
- package/dist/services/queue-bus/queue-bus.utils.d.ts.map +1 -0
- package/dist/services/queue-bus/queue-bus.utils.js +82 -0
- package/dist/services/queue-bus/queue-bus.utils.js.map +1 -0
- package/dist/services/queue-bus/queue-target.d.ts +61 -0
- package/dist/services/queue-bus/queue-target.d.ts.map +1 -0
- package/dist/services/queue-bus/queue-target.js +123 -0
- package/dist/services/queue-bus/queue-target.js.map +1 -0
- package/dist/services/queue-events-manager/queue-events-manager.service.d.ts +23 -6
- package/dist/services/queue-events-manager/queue-events-manager.service.d.ts.map +1 -1
- package/dist/services/queue-events-manager/queue-events-manager.service.js +69 -37
- package/dist/services/queue-events-manager/queue-events-manager.service.js.map +1 -1
- package/dist/services/resource-lock/resource-lock.service.d.ts +0 -4
- package/dist/services/resource-lock/resource-lock.service.d.ts.map +1 -1
- package/dist/services/resource-lock/resource-lock.service.js +4 -16
- package/dist/services/resource-lock/resource-lock.service.js.map +1 -1
- package/dist/services/service-queue/index.d.ts +1 -0
- package/dist/services/service-queue/index.d.ts.map +1 -1
- package/dist/services/service-queue/index.js +1 -0
- package/dist/services/service-queue/index.js.map +1 -1
- package/dist/services/service-queue/service-queue.service.d.ts +2 -35
- package/dist/services/service-queue/service-queue.service.d.ts.map +1 -1
- package/dist/services/service-queue/service-queue.service.js +17 -49
- package/dist/services/service-queue/service-queue.service.js.map +1 -1
- package/dist/services/service-queue/service-queue.types.d.ts +32 -0
- package/dist/services/service-queue/service-queue.types.d.ts.map +1 -0
- package/dist/services/service-queue/service-queue.types.js +27 -0
- package/dist/services/service-queue/service-queue.types.js.map +1 -0
- package/dist/services/spawn-queue/index.d.ts +2 -0
- package/dist/services/spawn-queue/index.d.ts.map +1 -0
- package/dist/services/spawn-queue/index.js +18 -0
- package/dist/services/spawn-queue/index.js.map +1 -0
- package/dist/services/spawn-queue/spawn-queue.service.d.ts +119 -0
- package/dist/services/spawn-queue/spawn-queue.service.d.ts.map +1 -0
- package/dist/services/spawn-queue/spawn-queue.service.js +273 -0
- package/dist/services/spawn-queue/spawn-queue.service.js.map +1 -0
- package/dist/services/worker-manager/worker-manager.service.d.ts +18 -3
- package/dist/services/worker-manager/worker-manager.service.d.ts.map +1 -1
- package/dist/services/worker-manager/worker-manager.service.js +46 -21
- package/dist/services/worker-manager/worker-manager.service.js.map +1 -1
- package/dist/utils/async.utils.d.ts +51 -0
- package/dist/utils/async.utils.d.ts.map +1 -0
- package/dist/utils/async.utils.js +87 -0
- package/dist/utils/async.utils.js.map +1 -0
- package/dist/utils/helpers.d.ts +4 -123
- package/dist/utils/helpers.d.ts.map +1 -1
- package/dist/utils/helpers.js +18 -226
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/job.utils.d.ts +50 -0
- package/dist/utils/job.utils.d.ts.map +1 -0
- package/dist/utils/job.utils.js +89 -0
- package/dist/utils/job.utils.js.map +1 -0
- package/dist/utils/naming.utils.d.ts +21 -0
- package/dist/utils/naming.utils.d.ts.map +1 -0
- package/dist/utils/naming.utils.js +38 -0
- package/dist/utils/naming.utils.js.map +1 -0
- package/dist/utils/rate-limit.utils.d.ts +9 -0
- package/dist/utils/rate-limit.utils.d.ts.map +1 -0
- package/dist/utils/rate-limit.utils.js +30 -0
- package/dist/utils/rate-limit.utils.js.map +1 -0
- package/dist/utils/redis.utils.d.ts +3 -0
- package/dist/utils/redis.utils.d.ts.map +1 -0
- package/dist/utils/redis.utils.js +14 -0
- package/dist/utils/redis.utils.js.map +1 -0
- package/package.json +17 -17
- package/dist/decorators/decorators.d.ts +0 -489
- package/dist/decorators/decorators.d.ts.map +0 -1
- package/dist/decorators/decorators.js +0 -680
- package/dist/decorators/decorators.js.map +0 -1
- package/dist/domain/interfaces.d.ts +0 -748
- package/dist/domain/interfaces.d.ts.map +0 -1
- package/dist/domain/interfaces.js +0 -19
- package/dist/domain/interfaces.js.map +0 -1
|
@@ -1,65 +1,24 @@
|
|
|
1
1
|
import { OnModuleInit, Type } from '@nestjs/common';
|
|
2
|
-
import { ModuleRef, DiscoveryService
|
|
3
|
-
import {
|
|
4
|
-
import { WorkerManagerService } from '../worker-manager';
|
|
5
|
-
import { QueueManagerService } from '../queue-manager';
|
|
6
|
-
import { CronManagerService } from '../cron-manager';
|
|
2
|
+
import { ModuleRef, DiscoveryService } from '@nestjs/core';
|
|
3
|
+
import { ICommandBus, IQueryBus, IAtomicQueuesModuleConfig } from '../../domain';
|
|
7
4
|
import { CommandDiscoveryService } from '../command-discovery';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
execute<T>(command: T): Promise<any>;
|
|
13
|
-
}
|
|
14
|
-
interface IQueryBus {
|
|
15
|
-
execute<T>(query: T): Promise<any>;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Registered processor info
|
|
19
|
-
*/
|
|
20
|
-
export interface RegisteredProcessor {
|
|
21
|
-
entityType: string;
|
|
22
|
-
processorInstance: any;
|
|
23
|
-
options: WorkerProcessorOptions;
|
|
24
|
-
jobHandlers: Map<string, {
|
|
25
|
-
method: string;
|
|
26
|
-
isWildcard: boolean;
|
|
27
|
-
}>;
|
|
28
|
-
wildcardHandler?: {
|
|
29
|
-
method: string;
|
|
30
|
-
};
|
|
31
|
-
queueNameFn: (entityId: string) => string;
|
|
32
|
-
workerNameFn: (entityId: string) => string;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Registered scaler info
|
|
36
|
-
*/
|
|
37
|
-
export interface RegisteredScaler {
|
|
38
|
-
entityType: string;
|
|
39
|
-
scalerInstance: any;
|
|
40
|
-
options: EntityScalerOptions;
|
|
41
|
-
methods: {
|
|
42
|
-
getActiveEntities?: string;
|
|
43
|
-
getDesiredWorkerCount?: string;
|
|
44
|
-
onSpawnWorker?: string;
|
|
45
|
-
onTerminateWorker?: string;
|
|
46
|
-
};
|
|
47
|
-
}
|
|
5
|
+
import { ProcessorRegistry, RegisteredProcessor, RegisteredScaler } from './processor-registry';
|
|
6
|
+
import { DecoratorDiscoveryService } from './decorator-discovery.service';
|
|
7
|
+
import { WorkerFactoryService } from './worker-factory.service';
|
|
8
|
+
import { ScalingRegistrationService } from './scaling-registration.service';
|
|
48
9
|
/**
|
|
49
10
|
* ProcessorDiscoveryService
|
|
50
11
|
*
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
* - @EntityScaler - For entity scaling logic
|
|
12
|
+
* Orchestrator that coordinates discovery, registration, worker creation,
|
|
13
|
+
* and scaling setup. Delegates to focused services:
|
|
54
14
|
*
|
|
55
|
-
*
|
|
56
|
-
* -
|
|
57
|
-
* -
|
|
58
|
-
* -
|
|
15
|
+
* - ProcessorRegistry: state management for processors/scalers/workers
|
|
16
|
+
* - DecoratorDiscoveryService: NestJS provider scanning and registration
|
|
17
|
+
* - WorkerFactoryService: worker creation and job processing
|
|
18
|
+
* - ScalingRegistrationService: scaling/spawn registration logic
|
|
59
19
|
*
|
|
60
20
|
* @example
|
|
61
21
|
* ```typescript
|
|
62
|
-
* // Classes are auto-discovered from module providers
|
|
63
22
|
* @WorkerProcessor({ entityType: 'table' })
|
|
64
23
|
* @Injectable()
|
|
65
24
|
* export class TableProcessor {
|
|
@@ -77,22 +36,16 @@ export interface RegisteredScaler {
|
|
|
77
36
|
*/
|
|
78
37
|
export declare class ProcessorDiscoveryService implements OnModuleInit {
|
|
79
38
|
private readonly discoveryService;
|
|
80
|
-
private readonly metadataScanner;
|
|
81
39
|
private readonly moduleRef;
|
|
82
|
-
private readonly
|
|
83
|
-
private readonly
|
|
84
|
-
private readonly
|
|
40
|
+
private readonly registry;
|
|
41
|
+
private readonly decoratorDiscovery;
|
|
42
|
+
private readonly workerFactory;
|
|
43
|
+
private readonly scalingRegistration;
|
|
85
44
|
private readonly commandDiscovery;
|
|
86
|
-
private readonly serviceQueueManager;
|
|
87
|
-
private readonly queueEventsManager;
|
|
88
45
|
private readonly config;
|
|
89
46
|
private readonly logger;
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
private readonly activeWorkers;
|
|
93
|
-
private commandBus;
|
|
94
|
-
private queryBus;
|
|
95
|
-
constructor(discoveryService: DiscoveryService, metadataScanner: MetadataScanner, moduleRef: ModuleRef, workerManager: WorkerManagerService, queueManager: QueueManagerService, cronManager: CronManagerService, commandDiscovery: CommandDiscoveryService, serviceQueueManager: ServiceQueueManager, queueEventsManager: QueueEventsManagerService, config: IAtomicQueuesModuleConfig);
|
|
47
|
+
constructor(discoveryService: DiscoveryService, moduleRef: ModuleRef, registry: ProcessorRegistry, decoratorDiscovery: DecoratorDiscoveryService, workerFactory: WorkerFactoryService, scalingRegistration: ScalingRegistrationService, commandDiscovery: CommandDiscoveryService, config: IAtomicQueuesModuleConfig);
|
|
48
|
+
onModuleInit(): Promise<void>;
|
|
96
49
|
/**
|
|
97
50
|
* Set the CommandBus for executing commands from QueueBus registry
|
|
98
51
|
*/
|
|
@@ -101,106 +54,45 @@ export declare class ProcessorDiscoveryService implements OnModuleInit {
|
|
|
101
54
|
* Set the QueryBus for executing queries from QueueBus registry
|
|
102
55
|
*/
|
|
103
56
|
setQueryBus(queryBus: IQueryBus): void;
|
|
104
|
-
onModuleInit(): Promise<void>;
|
|
105
57
|
/**
|
|
106
|
-
*
|
|
107
|
-
* This creates virtual processors for entities that don't have explicit @WorkerProcessor classes.
|
|
108
|
-
*
|
|
109
|
-
* Benefits:
|
|
110
|
-
* - No boilerplate @WorkerProcessor class needed
|
|
111
|
-
* - Just configure in module and decorate commands with @QueueEntity
|
|
112
|
-
* - Workers auto-spawn on job arrival and terminate when idle
|
|
58
|
+
* Attempt to resolve CommandBus and QueryBus from the DI container.
|
|
113
59
|
*/
|
|
114
|
-
private
|
|
115
|
-
/**
|
|
116
|
-
* Register processors that don't have an EntityScaler (scalerless mode).
|
|
117
|
-
* These processors will auto-spawn workers when jobs arrive and
|
|
118
|
-
* auto-terminate when idle.
|
|
119
|
-
*/
|
|
120
|
-
private registerScalerlessProcessors;
|
|
121
|
-
/**
|
|
122
|
-
* Setup QueueEvents listening for job arrivals.
|
|
123
|
-
* This enables automatic worker spawning when jobs are added.
|
|
124
|
-
*/
|
|
125
|
-
private setupQueueEventsListening;
|
|
126
|
-
/**
|
|
127
|
-
* Register spawn worker handler with ServiceQueueManager
|
|
128
|
-
* This allows workers to be spawned on-demand via the service queue.
|
|
129
|
-
* Uses the same logic as scaling cycle - calls scaler's @OnSpawnWorker first,
|
|
130
|
-
* then auto-creates via processor if registered.
|
|
131
|
-
*/
|
|
132
|
-
private registerSpawnWorkerHandler;
|
|
60
|
+
private autoWireCqrsBuses;
|
|
133
61
|
/**
|
|
134
62
|
* Auto-discover and register commands/queries from @nestjs/cqrs handlers
|
|
135
63
|
*/
|
|
136
64
|
private autoRegisterCommandsFromCqrs;
|
|
137
65
|
/**
|
|
138
|
-
*
|
|
66
|
+
* Get registered processor for an entity type
|
|
139
67
|
*/
|
|
140
|
-
|
|
68
|
+
getProcessor(entityType: string): RegisteredProcessor | undefined;
|
|
141
69
|
/**
|
|
142
|
-
*
|
|
70
|
+
* Get registered scaler for an entity type
|
|
143
71
|
*/
|
|
144
|
-
|
|
72
|
+
getScaler(entityType: string): RegisteredScaler | undefined;
|
|
145
73
|
/**
|
|
146
|
-
*
|
|
74
|
+
* Get all registered entity types
|
|
147
75
|
*/
|
|
148
|
-
|
|
76
|
+
getRegisteredEntityTypes(): string[];
|
|
149
77
|
/**
|
|
150
|
-
*
|
|
78
|
+
* Check if a worker exists for an entity
|
|
151
79
|
*/
|
|
152
|
-
|
|
80
|
+
hasActiveWorker(entityType: string, entityId: string): boolean;
|
|
153
81
|
/**
|
|
154
|
-
*
|
|
82
|
+
* Get all active workers for an entity type
|
|
155
83
|
*/
|
|
156
|
-
|
|
84
|
+
getActiveWorkers(entityType: string): string[];
|
|
157
85
|
/**
|
|
158
86
|
* Create a worker for an entity using the registered processor
|
|
159
87
|
*/
|
|
160
88
|
createWorkerForEntity(entityType: string, entityId: string): Promise<void>;
|
|
161
|
-
/**
|
|
162
|
-
* Process a job using the registered handlers
|
|
163
|
-
*
|
|
164
|
-
* Priority order:
|
|
165
|
-
* 1. Explicit @JobHandler on the processor class (if instance exists)
|
|
166
|
-
* 2. Auto-routing via @JobCommand/@JobQuery decorated classes
|
|
167
|
-
* 3. QueueBus registry lookup (class name as job name)
|
|
168
|
-
* 4. Wildcard @JobHandler('*') on the processor class (if instance exists)
|
|
169
|
-
*/
|
|
170
|
-
private processJob;
|
|
171
|
-
/**
|
|
172
|
-
* Execute a command/query from QueueBus registry
|
|
173
|
-
*/
|
|
174
|
-
private executeFromRegistry;
|
|
175
89
|
/**
|
|
176
90
|
* Manually register a processor class
|
|
177
|
-
* Use this when auto-discovery is not available or for dynamic registration
|
|
178
91
|
*/
|
|
179
92
|
registerProcessorClass<T>(processorClass: Type<T>, instance?: T): Promise<void>;
|
|
180
93
|
/**
|
|
181
94
|
* Manually register a scaler class
|
|
182
95
|
*/
|
|
183
96
|
registerScalerClass<T>(scalerClass: Type<T>, instance?: T): Promise<void>;
|
|
184
|
-
/**
|
|
185
|
-
* Get registered processor for an entity type
|
|
186
|
-
*/
|
|
187
|
-
getProcessor(entityType: string): RegisteredProcessor | undefined;
|
|
188
|
-
/**
|
|
189
|
-
* Get registered scaler for an entity type
|
|
190
|
-
*/
|
|
191
|
-
getScaler(entityType: string): RegisteredScaler | undefined;
|
|
192
|
-
/**
|
|
193
|
-
* Get all registered entity types
|
|
194
|
-
*/
|
|
195
|
-
getRegisteredEntityTypes(): string[];
|
|
196
|
-
/**
|
|
197
|
-
* Check if a worker exists for an entity
|
|
198
|
-
*/
|
|
199
|
-
hasActiveWorker(entityType: string, entityId: string): boolean;
|
|
200
|
-
/**
|
|
201
|
-
* Get all active workers for an entity type
|
|
202
|
-
*/
|
|
203
|
-
getActiveWorkers(entityType: string): string[];
|
|
204
97
|
}
|
|
205
|
-
export {};
|
|
206
98
|
//# sourceMappingURL=processor-discovery.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processor-discovery.service.d.ts","sourceRoot":"","sources":["../../../src/services/processor-discovery/processor-discovery.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EACZ,IAAI,EAGL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"processor-discovery.service.d.ts","sourceRoot":"","sources":["../../../src/services/processor-discovery/processor-discovery.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EACZ,IAAI,EAGL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAG/D,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBACa,yBAA0B,YAAW,YAAY;IAI9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACxB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAE7C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAXzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA8C;gBAGtC,gBAAgB,EAAE,gBAAgB,EAC9C,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,iBAAiB,EAC3B,kBAAkB,EAAE,yBAAyB,EAC7C,aAAa,EAAE,oBAAoB,EACnC,mBAAmB,EAAE,0BAA0B,EACnC,gBAAgB,EAAE,uBAAuB,EAErD,MAAM,EAAE,yBAAyB;IAG9C,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BnC;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAO5C;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI;IAOtC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgCzB;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAcpC;;OAEG;IACH,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS;IAIjE;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAI3D;;OAEG;IACH,wBAAwB,IAAI,MAAM,EAAE;IAIpC;;OAEG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI9D;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE;IAQ9C;;OAEG;IACG,qBAAqB,CACzB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAQhB;;OAEG;IACG,sBAAsB,CAAC,CAAC,EAC5B,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,EACvB,QAAQ,CAAC,EAAE,CAAC,GACX,OAAO,CAAC,IAAI,CAAC;IAahB;;OAEG;IACG,mBAAmB,CAAC,CAAC,EACzB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,QAAQ,CAAC,EAAE,CAAC,GACX,OAAO,CAAC,IAAI,CAAC;CAYjB"}
|