0.12.2 • Published 4 years ago
commons-eventbus v0.12.2
node-commons-eventbus
Usage
import 'reflect-metadata'
import {Event,EventBus,subscribe} from 'commons-eventbus'
// Definition of the exchange object type
@Event()
class MySuggestion {
content:string;
constructor(content:string){
this.content = content;
}
}
// subscribe to listening for the explicit object type
class WillListenOnEvent {
@subscribe(MySuggestion)
letstalk(data:MySuggestion){
console.log(data.content);
}
}
let instance = new WillListenOnEvent()
EventBus.register(instance);
let suggestion = new MySuggestion('blabla');
EventBus.post(suggestion);
// That's it
Use without annotations:
import 'reflect-metadata'
import {Event, subscribe, EventBus, EventBusMeta} from 'commons-eventbus'
// Definition of the exchange object type
class MySuggestion {
content:string;
constructor(content:string){
this.content = content;
}
}
// subscribe to listening for the explicit object type
class WillListenOnEvent {
letstalk(data:MySuggestion){
console.log(data.content);
}
}
EventBusMeta.$().register({
type: 'subscribe',
target: WillListenOnEvent,
eventClass: MySuggestion,
methodName: 'letstalk',
configuration: 'default',
configurationOptions: null
});
let instance = new WillListenOnEvent()
EventBus.register(instance);
let suggestion = new MySuggestion('blabla');
EventBus.post(suggestion);
Supported adapter
- default (Eventemitter)
- nsq
- redis
Configuration
TODO
Example configuration for nsq:
import {EventBus} from 'commons-eventbus'
let eventBusSettings = {
name: 'default_nsq',
adapter: 'nsq',
extra: {
reader: {
nsqdTCPAddresses:['localhost:4150'],
maxInFlight: 100,
messageTimeout: 30000
},
writer:{
host: '127.0.0.1',
port: 4150
}
}
}
EventBus.$().addConfiguration(eventBusSettings);
Example configuration for redis:
import {EventBus} from 'commons-eventbus'
let eventBusSettings = {
name: 'default_redis',
adapter: 'redis',
extra: {
host: '127.0.0.1',
port: 6379
}
}
EventBus.$().addConfiguration(eventBusSettings);
0.12.2
4 years ago
0.12.1
4 years ago
0.12.0
4 years ago
0.11.2
5 years ago
0.11.1
5 years ago
0.11.0
5 years ago
0.10.4
5 years ago
0.10.3
5 years ago
0.10.2
5 years ago
0.10.1
5 years ago
0.10.0
5 years ago
0.9.8
6 years ago
0.9.7
6 years ago
0.9.6
6 years ago
0.9.5
6 years ago
0.9.4
6 years ago
0.9.3
6 years ago
0.9.2
6 years ago
0.9.1
6 years ago
0.9.0
6 years ago