@algoan/nestjs-google-pubsub-client
    TypeScript icon, indicating that this package has built-in type declarations

    0.4.2 • Public • Published

    google-pubsub-client

    The client extends the ClientProxy class and have to override the emit method using @algoan/pubsub.

    ⚠️ This Client only overrides the abstract dispatchEvent method. Therefore, only the client#emit method can be called.

    Installation

    npm install --save @algoan/pubsub @algoan/nestjs-google-pubsub-client

    Usage

    To instantiate the GCPubSubClient:

    Module:

    // app.module.ts
    import { Module } from '@nestjs/common';
    
    import { GCPubSubClient } from '../../src';
    import { AppController } from './app.controller';
    import { AppService } from './app.service';
    
    /**
     * App module
     */
    @Module({
      controllers: [AppController],
      providers: [
        AppService,
        {
          provide: 'PUBSUB_CLIENT',
          useFactory: () => {
            // Use a factory to add you custom options
            return new GCPubSubClient({});
          },
        },
      ],
    })
    export class AppModule {}

    Service:

    import { Inject, OnModuleInit } from '@nestjs/common';
    import { ClientProxy } from '@nestjs/microservices';
    
    /**
     * Fake app service
     */
    export class AppService implements OnModuleInit {
      constructor(@Inject('PUBSUB_CLIENT') private readonly client: ClientProxy) {}
    
      /**
       * Connect the client proxy on module init
       * NOTE: this is optional with GooglePubSubClient. It is called anyway in the emit method
       * See https://github.com/nestjs/nest/blob/master/packages/microservices/client/client-proxy.ts#L67
       */
      public async onModuleInit(): Promise<void> {
        await this.client.connect();
      }
      /**
       * Emit a test event
       * @param data Payload sent
       */
      public emitTestEvent(data: { hello: string }): void {
        this.client.emit('test_event', data);
      }
    }

    new GCPubSubClient(options)

    Initiate a new Google Cloud PubSub Client proxy.

    • options: Options related to the GC PubSub instance. More details on options here

    Install

    npm i @algoan/nestjs-google-pubsub-client

    DownloadsWeekly Downloads

    935

    Version

    0.4.2

    License

    ISC

    Unpacked Size

    16 kB

    Total Files

    7

    Last publish

    Collaborators

    • algoanbot
    • fabong
    • na-ji