dependencies dependencies cluster_QueueModule cluster_QueueModule_providers cluster_QueueModule_exports MessageService MessageService QueueModule QueueModule QueueModule->MessageService MessageService MessageService MessageService->QueueModule

File

src/queue/queue.module.ts

Providers

Exports

import { Module, forwardRef } from '@nestjs/common';
import { ConfigProvider } from '../common/provider/config.provider';
import { MessageConsumer } from './consumer/message.consumer';
import { BullModule } from '@nestjs/bull';
import { QUEUE } from './constant/queue.constant';
import { QueueMessageProvider } from './provider/message-queue.provider';
import { NotificationModule } from '../notification/notification.module';
import configuration from '../config/default';
import { MessageService } from './service/message.service';
import { TriggerTimeSlotModule } from '../trigger-time-slot/trigger-time-slot.module';
import { ConfigModule } from '@nestjs/config';

@Module({
  providers: [
    ConfigProvider,
    MessageConsumer,
    QueueMessageProvider,
    MessageService,
  ],
  imports: [
    forwardRef(() => NotificationModule),
    forwardRef(() => TriggerTimeSlotModule),
    BullModule.registerQueue({
      name: QUEUE.MESSAGE,
      defaultJobOptions: {
        removeOnComplete: true,
        attempts: configuration().queue.numberOfAttempts,
      },
    }),
    ConfigModule.forRoot({
      load: [configuration],
    }),
  ],
  exports: [QueueMessageProvider, MessageService],
})
export class QueueModule {}

results matching ""

    No results matching ""