fix(core): update
This commit is contained in:
parent
969b2d6686
commit
fef1ae338a
20
package-lock.json
generated
20
package-lock.json
generated
@ -1950,9 +1950,9 @@
|
||||
}
|
||||
},
|
||||
"@pushrocks/smartsocket": {
|
||||
"version": "1.2.6",
|
||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartsocket/-/smartsocket-1.2.6.tgz",
|
||||
"integrity": "sha512-rHOs/ANrgnrt+AHuUNAOzb+X5FrtP/yaC/6qp7lQSorb6x73T5343/9TB875kI1Q3trqlwJDvJy7+uJQ7zMMhg==",
|
||||
"version": "1.2.7",
|
||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartsocket/-/smartsocket-1.2.7.tgz",
|
||||
"integrity": "sha512-EBtWZRnoC9/0/KuBq2k6fTeFXx6r4LvXTS64VvC2lJkx5UgWhG0ZNhOTkMtVlf96fCk5Y9v9PS8UbG8fO7M1Gg==",
|
||||
"requires": {
|
||||
"@apiglobal/typedrequest-interfaces": "^1.0.15",
|
||||
"@pushrocks/isohash": "^1.0.2",
|
||||
@ -1961,7 +1961,7 @@
|
||||
"@pushrocks/smartdelay": "^2.0.10",
|
||||
"@pushrocks/smartenv": "^4.0.16",
|
||||
"@pushrocks/smartexpress": "^3.0.100",
|
||||
"@pushrocks/smartjson": "^4.0.5",
|
||||
"@pushrocks/smartjson": "^4.0.6",
|
||||
"@pushrocks/smartlog": "^2.0.39",
|
||||
"@pushrocks/smartpromise": "^3.1.3",
|
||||
"@pushrocks/smartrx": "^2.0.19",
|
||||
@ -1972,6 +1972,18 @@
|
||||
"socket.io-client": "^3.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@pushrocks/smartjson": {
|
||||
"version": "4.0.6",
|
||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartjson/-/smartjson-4.0.6.tgz",
|
||||
"integrity": "sha512-lykr068RSDHs0+EXCvIDVxjKnDtRQ2M7EXOo5jVrUU6/OEdfRl9ErM1K/oPafiEi47/PtTrwLlp1KdSgqkRjmg==",
|
||||
"requires": {
|
||||
"@types/buffer-json": "^2.0.0",
|
||||
"@types/fast-json-stable-stringify": "^2.0.0",
|
||||
"buffer-json": "^2.0.0",
|
||||
"fast-json-stable-stringify": "^2.1.0",
|
||||
"lodash.clonedeep": "^4.5.0"
|
||||
}
|
||||
},
|
||||
"@pushrocks/smarttime": {
|
||||
"version": "3.0.38",
|
||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmarttime/-/smarttime-3.0.38.tgz",
|
||||
|
@ -25,7 +25,7 @@
|
||||
"@apiglobal/typedrequest-interfaces": "^1.0.15",
|
||||
"@pushrocks/isohash": "^1.0.2",
|
||||
"@pushrocks/smartexpress": "^3.0.100",
|
||||
"@pushrocks/smartsocket": "^1.2.6",
|
||||
"@pushrocks/smartsocket": "^1.2.7",
|
||||
"@pushrocks/smartstring": "^3.0.24"
|
||||
},
|
||||
"browserslist": [
|
||||
|
@ -82,6 +82,7 @@ export class TypedSocket {
|
||||
url: `${domain.nodeParsedUrl.protocol}//${domain.nodeParsedUrl.hostname}`,
|
||||
autoReconnect: true,
|
||||
}
|
||||
console.log(`starting typedsocket with the following settings:`)
|
||||
console.log(socketOptions);
|
||||
const smartsocketClient = new plugins.smartsocket.SmartsocketClient(socketOptions);
|
||||
smartsocketClient.addSocketFunction(
|
||||
@ -156,32 +157,46 @@ export class TypedSocket {
|
||||
return typedrequest;
|
||||
}
|
||||
|
||||
public async findTargetConnection(
|
||||
findFuncArg: (connectionArg: plugins.smartsocket.SocketConnection) => boolean
|
||||
public async findAllTargetConnections(
|
||||
asyncFindFuncArg: (connectionArg: plugins.smartsocket.SocketConnection) => Promise<boolean>
|
||||
) {
|
||||
if (this.socketServerOrClient instanceof plugins.smartsocket.Smartsocket) {
|
||||
const matchingSockets: plugins.smartsocket.SocketConnection[] = [];
|
||||
for (const socketConnection of this.socketServerOrClient.socketConnections.getArray()) {
|
||||
if (findFuncArg(socketConnection)) {
|
||||
return socketConnection;
|
||||
if (await asyncFindFuncArg(socketConnection)) {
|
||||
matchingSockets.push(socketConnection);
|
||||
}
|
||||
}
|
||||
return matchingSockets;
|
||||
} else {
|
||||
throw new Error('this method >>findTargetConnection<< is only available from the server');
|
||||
}
|
||||
}
|
||||
|
||||
public async findTargetConnectionByTag(keyArg: string, payload?: any) {
|
||||
this.findTargetConnection(socketConnectionArg => {
|
||||
public async findTargetConnection(
|
||||
asyncFindFuncArg: (connectionArg: plugins.smartsocket.SocketConnection) => Promise<boolean>
|
||||
) {
|
||||
const allMatching = this.findAllTargetConnections(asyncFindFuncArg);
|
||||
return allMatching[0];
|
||||
}
|
||||
|
||||
public async findAllTargetConnectionsByTag(keyArg: string, payloadArg?: any) {
|
||||
return this.findAllTargetConnections(async socketConnectionArg => {
|
||||
let result: boolean;
|
||||
if (!payload) {
|
||||
if (!payloadArg) {
|
||||
result = !!socketConnectionArg.getTagById('keyArg')
|
||||
} else {
|
||||
result = !!socketConnectionArg.getTagById('keyArg') === payload;
|
||||
result = !!socketConnectionArg.getTagById('keyArg') === payloadArg;
|
||||
}
|
||||
return result;
|
||||
})
|
||||
}
|
||||
|
||||
public async findTargetConnectionByTag(keyArg: string, payloadArg?: any) {
|
||||
const allResults = this.findAllTargetConnectionsByTag(keyArg, payloadArg)
|
||||
return allResults[0];
|
||||
}
|
||||
|
||||
public async stop() {
|
||||
await this.socketServerOrClient.stop()
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user