UNPKG

gamelet-cli

Version:

Download project from code.gamelet.com, edit/test in vscode and sync back to server.

64 lines 4.85 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.clientManager = exports.ClientManager = void 0; const ClientOwner_1 = require("./../entities/ClientOwner"); const ManagerBase_1 = require("./ManagerBase"); const gltserver_service_1 = require("../services/gltserver.service"); class ClientManager extends ManagerBase_1.ManagerBase { constructor() { super('ClientManager'); this.owners = {}; this.projects = {}; } initialize() { } getClientOwner(ownername, createIfNotExist) { let owner = this.owners[ownername]; if (!owner && createIfNotExist) { owner = new ClientOwner_1.ClientOwner(ownername); this.owners[ownername] = owner; } return owner; } getClientProject(clientCode, createIfNotExist) { let project = this.projects[clientCode]; if (!project && createIfNotExist) { return gltserver_service_1.serverService.getOwnernameByClient(clientCode) .then(ownername => { let owner = this.getClientOwner(ownername, true); project = owner.getProject(clientCode); this.projects[clientCode] = project; return project; }); } return Promise.resolve(project); } getCachedClientProject(clientCode) { return this.projects[clientCode]; } getClientByToken(token, msgVersion) { let params = token.split('|'); return this.getClient(params[1], msgVersion); } getClient(clientCode, msgVersion) { return this.getClientProject(clientCode, true) .then(project => project.getClient(msgVersion)); } listProjects() { let list = []; for (let key in this.projects) { list.push(this.projects[key]); } return list; } get playersCount() { let count = 0; for (let key in this.projects) { count += this.projects[key].playersCount; } return count; } } exports.ClientManager = ClientManager; exports.clientManager = new ClientManager(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xpZW50TWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2ZXIvbWFuYWdlcnMvQ2xpZW50TWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFBd0Q7QUFDeEQsK0NBQTRDO0FBRzVDLHFFQUE4RDtBQUU5RCxNQUFhLGFBQWMsU0FBUSx5QkFBVztJQUsxQztRQUNJLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUpuQixXQUFNLEdBQW1DLEVBQUUsQ0FBQztRQUM1QyxhQUFRLEdBQXFDLEVBQUUsQ0FBQztJQUl4RCxDQUFDO0lBRUQsVUFBVTtJQUVWLENBQUM7SUFFRCxjQUFjLENBQUMsU0FBaUIsRUFBRSxnQkFBeUI7UUFDdkQsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxJQUFJLGdCQUFnQixFQUFFO1lBQzVCLEtBQUssR0FBRyxJQUFJLHlCQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUM7U0FDbEM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBa0IsRUFBRSxnQkFBeUI7UUFDMUQsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsT0FBTyxJQUFJLGdCQUFnQixFQUFFO1lBQzlCLE9BQU8saUNBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUM7aUJBQ2hELElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDZCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDakQsT0FBTyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsT0FBTyxDQUFDO2dCQUNwQyxPQUFPLE9BQU8sQ0FBQztZQUNuQixDQUFDLENBQUMsQ0FBQTtTQUVUO1FBQ0QsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxVQUFrQjtRQUNyQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWEsRUFBRSxVQUFrQjtRQUM5QyxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFNBQVMsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQzVDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7YUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBO0lBQ3ZELENBQUM7SUFFRCxZQUFZO1FBQ1IsSUFBSSxJQUFJLEdBQW9CLEVBQUUsQ0FBQztRQUMvQixLQUFLLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDakM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ1osSUFBSSxLQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLEtBQUssSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUMzQixLQUFLLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUM7U0FDNUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0NBQ0o7QUFsRUQsc0NBa0VDO0FBRVksUUFBQSxhQUFhLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQyJ9