fix(core): update
This commit is contained in:
parent
57809d9b53
commit
eb04abddbf
12
package-lock.json
generated
12
package-lock.json
generated
@ -330,9 +330,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@pushrocks/smartsocket": {
|
"@pushrocks/smartsocket": {
|
||||||
"version": "1.1.37",
|
"version": "1.1.38",
|
||||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartsocket/-/smartsocket-1.1.37.tgz",
|
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartsocket/-/smartsocket-1.1.38.tgz",
|
||||||
"integrity": "sha512-4XYj4v7yrvmh1PlKe7u6fE84bsAn4c8loGA/hxbB1IPntXBXZbXqEXnOQo6Dpqxwk6nGC4ABGpZIMXf+o6qcLQ==",
|
"integrity": "sha512-mGWEuA53GqTFOCebwo4Ayu2l7xjui7I0tdUNgZShGhIr4yv+q3sP/66q6cT388xVawIN+swviJPlPoogaoZXdA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@pushrocks/lik": "^3.0.5",
|
"@pushrocks/lik": "^3.0.5",
|
||||||
"@pushrocks/smartdelay": "^2.0.3",
|
"@pushrocks/smartdelay": "^2.0.3",
|
||||||
@ -510,9 +510,9 @@
|
|||||||
"integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="
|
"integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="
|
||||||
},
|
},
|
||||||
"@types/node": {
|
"@types/node": {
|
||||||
"version": "12.0.6",
|
"version": "12.0.7",
|
||||||
"resolved": "https://verdaccio.lossless.one/@types%2fnode/-/node-12.0.6.tgz",
|
"resolved": "https://verdaccio.lossless.one/@types%2fnode/-/node-12.0.7.tgz",
|
||||||
"integrity": "sha512-3sV/MUw6uYxPaRIoooI/MjO0j1A06JNlbpkGc56F+zikO52qavehD/Qw85so47gWhO82tNzEFoF6adXqIfK+EA=="
|
"integrity": "sha512-1YKeT4JitGgE4SOzyB9eMwO0nGVNkNEsm9qlIt1Lqm/tG2QEiSMTD4kS3aO6L+w5SClLVxALmIBESK6Mk5wX0A=="
|
||||||
},
|
},
|
||||||
"@types/range-parser": {
|
"@types/range-parser": {
|
||||||
"version": "1.2.3",
|
"version": "1.2.3",
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
"@gitzone/tsbuild": "^2.1.11",
|
"@gitzone/tsbuild": "^2.1.11",
|
||||||
"@gitzone/tstest": "^1.0.24",
|
"@gitzone/tstest": "^1.0.24",
|
||||||
"@pushrocks/tapbundle": "^3.0.9",
|
"@pushrocks/tapbundle": "^3.0.9",
|
||||||
"@types/node": "^12.0.6",
|
"@types/node": "^12.0.7",
|
||||||
"tslint": "^5.17.0",
|
"tslint": "^5.17.0",
|
||||||
"tslint-config-prettier": "^1.18.0"
|
"tslint-config-prettier": "^1.18.0"
|
||||||
},
|
},
|
||||||
@ -33,7 +33,7 @@
|
|||||||
"@pushrocks/smartpromise": "^3.0.2",
|
"@pushrocks/smartpromise": "^3.0.2",
|
||||||
"@pushrocks/smartrequest": "^1.1.15",
|
"@pushrocks/smartrequest": "^1.1.15",
|
||||||
"@pushrocks/smartrx": "^2.0.3",
|
"@pushrocks/smartrx": "^2.0.3",
|
||||||
"@pushrocks/smartsocket": "^1.1.37",
|
"@pushrocks/smartsocket": "^1.1.38",
|
||||||
"@pushrocks/smarttime": "^3.0.7",
|
"@pushrocks/smarttime": "^3.0.7",
|
||||||
"@pushrocks/smartunique": "^3.0.1"
|
"@pushrocks/smartunique": "^3.0.1"
|
||||||
},
|
},
|
||||||
|
4
ts/interfaces/universeconnection.interfaces.ts
Normal file
4
ts/interfaces/universeconnection.interfaces.ts
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
export interface IAuthenticationRequest {
|
||||||
|
channelName: string;
|
||||||
|
password: string;
|
||||||
|
}
|
@ -95,12 +95,12 @@ export class Universe {
|
|||||||
const SubscriptionSocketFunction = new plugins.smartsocket.SocketFunction({
|
const SubscriptionSocketFunction = new plugins.smartsocket.SocketFunction({
|
||||||
allowedRoles: [ClientRole], // there is only one client role, Authentication happens on another level
|
allowedRoles: [ClientRole], // there is only one client role, Authentication happens on another level
|
||||||
funcName: 'channelSubscription',
|
funcName: 'channelSubscription',
|
||||||
funcDef: async (dataArg, socketConnectionArg) => {
|
funcDef: async (dataArg: interfaces.IServerCallSubscribeActionPayload, socketConnectionArg) => {
|
||||||
// run in "this context" of this class
|
// run in "this context" of this class
|
||||||
(() => {
|
(() => {
|
||||||
// TODO: properly add the connection
|
// TODO: properly add the connection
|
||||||
const universeConnection = new UniverseConnection({
|
const universeConnection = new UniverseConnection({
|
||||||
|
authenticationRequest:
|
||||||
})
|
})
|
||||||
this.universeConnectionManager.addConnection();
|
this.universeConnectionManager.addConnection();
|
||||||
})();
|
})();
|
||||||
|
@ -5,21 +5,29 @@ import { UniverseChannel } from './smartuniverse.classes.universechannel';
|
|||||||
* represents a connection to the universe
|
* represents a connection to the universe
|
||||||
*/
|
*/
|
||||||
export class UniverseConnection {
|
export class UniverseConnection {
|
||||||
|
public terminatedDeferred = plugins.smartpromise.defer();
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* the socketClient to ping
|
* the socketClient to ping
|
||||||
*/
|
*/
|
||||||
public socketConnection: plugins.smartsocket.SocketConnection;
|
public socketConnection: plugins.smartsocket.SocketConnection;
|
||||||
public authenticationRequests = []
|
public authenticationRequests = [];
|
||||||
public subscribedChannels: UniverseChannel[] = [];
|
public subscribedChannels: UniverseChannel[] = [];
|
||||||
public authenticatedChannels: UniverseChannel[] = [];
|
public authenticatedChannels: UniverseChannel[] = [];
|
||||||
public failedToJoinChannels: UniverseChannel[] = [];
|
public failedToJoinChannels: UniverseChannel[] = [];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* terminates the connection
|
||||||
|
*/
|
||||||
public terminateConnection () {
|
public terminateConnection () {
|
||||||
this.socketConnection
|
this.socketConnection.socket.disconnect();
|
||||||
|
this.terminatedDeferred.resolve();
|
||||||
}
|
}
|
||||||
|
|
||||||
constructor(optionsArg: {
|
constructor(optionsArg: {
|
||||||
socketConnection: plugins.smartsocket.SocketConnection;
|
socketConnection: plugins.smartsocket.SocketConnection;
|
||||||
|
authenticationRequests
|
||||||
}) {
|
}) {
|
||||||
this.socketConnection,
|
this.socketConnection,
|
||||||
}
|
}
|
||||||
|
@ -7,5 +7,23 @@ import { UniverseConnection } from './smartuniverse.classes.universeconnection';
|
|||||||
export class UniverseConnectionManager {
|
export class UniverseConnectionManager {
|
||||||
public connectionMap = new plugins.lik.Objectmap<UniverseConnection>();
|
public connectionMap = new plugins.lik.Objectmap<UniverseConnection>();
|
||||||
|
|
||||||
public addConnection() {}
|
public async addConnection(universeConnectionArg: UniverseConnection) {
|
||||||
|
let universeConnection = universeConnectionArg;
|
||||||
|
universeConnection = await this.deduplicateUniverseConnection(universeConnection);
|
||||||
|
universeConnection = this.authenticateAuthenticationRequests();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* deduplicates UniverseConnections
|
||||||
|
*/
|
||||||
|
public deduplicateUniverseConnection (universeConnectionArg: UniverseConnection): Promise<UniverseConnection> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* authenticate AuthenticationRequests
|
||||||
|
*/
|
||||||
|
public authenticateAuthenticationRequests(universeConnectionArg) {
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user