Mercurial > pub > ImplabJs
view core/src/js/messaging/Client.js @ 31:40d2e49a7219
working on dependencies
author | cin |
---|---|
date | Wed, 27 Jun 2018 04:31:39 +0300 |
parents | acdcdf1a8d21 |
children |
line wrap: on
line source
define( [ "dojo/_base/declare", "dojo/_base/lang", "dojo/Evented", "../log/_LogMixin" ], function(declare, lang, Evented, _LogMixin) { return declare([ Evented, _LogMixin ], { _session : null, _destination : null, _id : null, constructor : function(session, destination, options) { this._destination = destination; this._session = session; }, getDestination : function() { return this._destination; }, start : function() { var me = this; return me._session.createClient(me.prepareOptions({})).then( function(id) { me._id = id; return me; }); }, prepareOptions : function(options) { var me = this; options.mode = me.getMode(); options.destination = me.getDestination(); options.client = function(msg) { me.process(msg); }; return options; }, process : function(msg) { this.warn("Messages are not acceped by this client"); }, stop : function() { var me = this; if (me._id) { me.log("stop"); return me._session.deleteClient({'clientId': me._id}).then(function() { me._id = null; return me; }); } }, toString : function() { return "[" + [ this.getMode().toUpperCase(), this.getDestination(), this._id ].join(',') + "]"; } }); });