Skip to content
This repository was archived by the owner on Feb 20, 2021. It is now read-only.
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 41 additions & 32 deletions public/wunderlist/Wunderlist.js
Original file line number Diff line number Diff line change
Expand Up @@ -227,45 +227,54 @@ var Wunderlist = WBEventEmitter.extend({

var accessToken = self.appState.attributes.accessToken;

self.createSocket(accessToken).done(function createServices () {
if(self.appState.attributes.sockets === true) {
self.createSocket(accessToken).done(self.createServices(compiledServices, deferred));
} else {
self.createServices(compiledServices, deferred)
}

// clear old services
self.http = undefined;
self.socket = undefined;
return deferred.promise();
},

// from args, options, or default to all
services = services || self.options.services || Object.keys(ServiceClasses);
'createServices': function (compiledServices, deferred) {
var self = this
var services
var service
var Klass
// clear old services
self.http = undefined;
self.socket = undefined;

self.httpIO = new IOHttp({
'config': self.appState.toJSON()
});
// from args, options, or default to all
services = services || self.options.services || Object.keys(ServiceClasses);

for (var i = 0, len = services.length; i < len; i++) {
service = services[i];
Klass = ServiceClasses[service];

// http service
compiledServices.http[service] = new Klass({
'appState': self.appState,
'httpIO': self.httpIO
});
self.bindTo(compiledServices.http[service], 'unauthorized', self.onUnauthorized);

// socket service
compiledServices.socket[service] = new Klass({
'websocket': true,
'restSocket': self.restSocket,
'appState': self.appState
});
}
self.httpIO = new IOHttp({
'config': self.appState.toJSON()
});

self.http = compiledServices.http;
self.socket = compiledServices.socket;
for (var i = 0, len = services.length; i < len; i++) {
service = services[i];
Klass = ServiceClasses[service];

deferred.resolve(compiledServices);
});
// http service
compiledServices.http[service] = new Klass({
'appState': self.appState,
'httpIO': self.httpIO
});
self.bindTo(compiledServices.http[service], 'unauthorized', self.onUnauthorized);

return deferred.promise();
// socket service
compiledServices.socket[service] = new Klass({
'websocket': self.appState.attributes.sockets,
'restSocket': self.restSocket,
'appState': self.appState
});
}

self.http = compiledServices.http;
self.socket = compiledServices.socket;

deferred.resolve(compiledServices);
},

'isSocketOnline': function () {
Expand Down