UNPKG

raas-server

Version:
52 lines 2.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const raas_client_1 = require("raas-client"); const driverMessageDelegate_1 = require("./driverMessageDelegate"); class DriverClient { constructor(emitter, socket, id, raasConfig) { this.emitter = emitter; this.socket = socket; this.id = id; this.raasConfig = raasConfig; this.listen(); } listen() { const disconnectClient = this.disconnectClient.bind(this); this.socket.on('close', disconnectClient); this.socket.on('error', disconnectClient); } listenForCommands() { this.socket.on('data', data => { console.log('driverClient received data: ' + data); const config = JSON.parse(data.toString()); console.log(`config is: ${config}`); this.messageDelegate.handleMessage({ method: config.method, params: config.params }); }); } connect() { this.raasClient = new raas_client_1.RaasClient(); this.raasClient.connect(2000, this.raasConfig.host, this.raasConfig.port).then(() => { console.log('diverClient ==> raasClient connected...'); this.messageDelegate = new driverMessageDelegate_1.DriverMessageDelage(this.raasClient); this.listenForCommands(); this.registerRaasClientListeners(); }); } disconnectClient() { console.log('driverClient diconnected...'); this.emitter.emit('clientDisconnected', this); this.raasClient.disconnect(); } registerRaasClientListeners() { this.raasClient.onDisconnected(() => { console.log('raasClient socket disconnected...'); this.socket.destroy(); this.emitter.emit('clientDisconnected', this); }); // this.raasClient.onServerStateChange(handle => { // this.socket.write(`server state changed: ${JSON.stringify(handle)}`); // }); } } exports.DriverClient = DriverClient; //# sourceMappingURL=driverClient.js.map