0.1.32 change buble up events to 'connection:socket' and 'connection:consumer'
parent
2d552bc6c1
commit
741823cce4
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@uci/base",
|
||||
"version": "0.1.31",
|
||||
"version": "0.1.32",
|
||||
"description": "Multi type and transport JSON packet communication base class. Used in UCI extended classes",
|
||||
"main": "src/base",
|
||||
"scripts": {
|
||||
|
@ -34,13 +34,13 @@
|
|||
"chai": "^4.2.0",
|
||||
"esm": "^3.2.25",
|
||||
"mocha": "^6.2.2",
|
||||
"nodemon": "^2.0.0"
|
||||
"nodemon": "^2.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@uci-utils/bind-funcs": "^0.2.4",
|
||||
"@uci-utils/logger": "^0.0.16",
|
||||
"@uci/mqtt": "^0.1.13",
|
||||
"@uci/socket": "^0.2.22",
|
||||
"@uci/socket": "^0.2.26",
|
||||
"@uci/websocket": "^0.3.10",
|
||||
"await-to-js": "^2.1.1",
|
||||
"p-reflect": "^2.1.0",
|
||||
|
|
14
src/base.js
14
src/base.js
|
@ -129,7 +129,7 @@ class Base extends EventEmitter {
|
|||
|
||||
async init(sockets) {
|
||||
// Object.getPrototypeOf(Object.getPrototypeOf(this).init.call(this,sockets))
|
||||
this.socketsInit(sockets)
|
||||
return this.socketsInit(sockets)
|
||||
// can do other init stuff here
|
||||
}
|
||||
|
||||
|
@ -168,7 +168,9 @@ class Base extends EventEmitter {
|
|||
if (typeof sockets ==='string') sockets = [sockets]
|
||||
// console.log('sockets to initialize',sockets)
|
||||
sockets.forEach(name => {
|
||||
inits.push({name:name, init:this.getSocketInit(name)})
|
||||
if (this._socket[name]) {
|
||||
inits.push({name:name, init:this.getSocketInit(name)})
|
||||
} else log.warn({msg:`no socket registered by name of ${name} to initialize`})
|
||||
})
|
||||
// console.log('starting promise',results,errors)
|
||||
let [err] = await to(Promise.all(inits.map(initialize)))
|
||||
|
@ -182,7 +184,7 @@ class Base extends EventEmitter {
|
|||
|
||||
// support old name for now
|
||||
async addSocket(name,type,transport,options) {
|
||||
this.registerSocket(name,type,transport,options)
|
||||
return this.registerSocket(name,type,transport,options)
|
||||
}
|
||||
|
||||
|
||||
|
@ -230,7 +232,7 @@ class Base extends EventEmitter {
|
|||
this._socket[name]._packetProcess = this._packetProcess.bind(this, name)
|
||||
|
||||
// bubble up events from sockets to instance
|
||||
const EVENTS=['status','consumer-connection'] // that should emit up from socket to instance
|
||||
const EVENTS=['log','connection','connection:consumer', 'connection:socket'] // that should emit up from each socket to instance
|
||||
EVENTS.forEach(event => {
|
||||
this._socket[name].on(event, obj => {
|
||||
if (Object.prototype.toString.call(obj) !== '[object Object]') {
|
||||
|
@ -300,6 +302,10 @@ class Base extends EventEmitter {
|
|||
|
||||
getSocketInit(name) {
|
||||
let socket = this._socket[name]
|
||||
if(!socket) {
|
||||
log.warn({msg:`can't fetch create/connect function, no socket registered by name of ${name}`})
|
||||
return null
|
||||
}
|
||||
if (this._socket[name].type === 's' && this._socket[name].transport !== 'm') {
|
||||
return socket.create
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue