appolo pubsub module
npm install @appolo/pubsub
pubsub module for appolo build with ioredis
``javascript`
npm i @appolo/pubsub
| PubSubProvider injection id | string| pubSubProvider|
| auto | true to auto initialize pubsub listen events | boolean | true |
| connection | redis connection string | string | null |in config/modules/all.ts
`javascript
import {PubSubModule} from '@appolo/pubsub';export = async function (app: App) {
await app.module(new PubSubModule({redis:"redis://redis-connection-string"}));
}
`Usage
$3
`javascript
import {define, singleton} from 'appolo'
import {publisher} from "@appolo/pubsub";@define()
@singleton()
export class SomePublisher {
@publisher("test")
async publish(data: any): Promise {
return data
}
}
`
Or with PubSubProvider
`javascript
@define()
@singleton()
export class SomePublisher { inject() pubSubProvider:PubSubProvider
async publish(data:any): Promise {
return this.pubSubProvider.publish("test",data)
}
}
`
$3
``javascript@define()
@singleton()
export class SomeHandler {
@handler("test")
handle(data: any) {
//do something
}
@handler("someName")
handle(data: any) {
//do some thing
}
}