Add pg-boss worker poc (#2991)
* Add pg-boss worker poc * add Example job * add retry limit * rename MessageQueue
This commit is contained in:
@ -1,9 +1,10 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
|
||||
import { FetchWorkspaceMessagesCommand } from 'src/workspace/messaging/commands/fetch-workspace-messages.command';
|
||||
import { MessagingModule } from 'src/workspace/messaging/messaging.module';
|
||||
|
||||
@Module({
|
||||
imports: [],
|
||||
imports: [MessagingModule],
|
||||
providers: [FetchWorkspaceMessagesCommand],
|
||||
})
|
||||
export class FetchWorkspaceMessagesCommandsModule {}
|
||||
|
||||
@ -1,5 +1,7 @@
|
||||
import { Command, CommandRunner, Option } from 'nest-commander';
|
||||
|
||||
import { MessagingProducer } from 'src/workspace/messaging/producers/messaging-producer';
|
||||
|
||||
interface FetchWorkspaceMessagesOptions {
|
||||
workspaceId: string;
|
||||
}
|
||||
@ -9,11 +11,18 @@ interface FetchWorkspaceMessagesOptions {
|
||||
description: 'Fetch messages of all workspaceMembers in a workspace.',
|
||||
})
|
||||
export class FetchWorkspaceMessagesCommand extends CommandRunner {
|
||||
constructor(private readonly messagingProducer: MessagingProducer) {
|
||||
super();
|
||||
}
|
||||
|
||||
async run(
|
||||
_passedParam: string[],
|
||||
options: FetchWorkspaceMessagesOptions,
|
||||
): Promise<void> {
|
||||
console.log('fetching messages for workspace', options.workspaceId);
|
||||
await this.messagingProducer.enqueueFetchMessages(
|
||||
{ workspaceId: options.workspaceId },
|
||||
options.workspaceId,
|
||||
);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user