diff options
| author | Christophe Matthieu <chm@odoo.com> | 2018-08-02 13:36:30 +0200 |
|---|---|---|
| committer | Christophe Matthieu <chm@odoo.com> | 2018-08-09 02:31:59 +0200 |
| commit | a8e4e625f4075892cd5b86b3dbc61b70ace3470d (patch) | |
| tree | 91e065ca47d5c88f6448162cf27ac3c6c70cfba8 /addons/web/static/src | |
| parent | cf4c4a11b734d65235e22b27550a499611581fff (diff) | |
[IMP] web: remove useless service name
We use the registry keys as name for the services.
Diffstat (limited to 'addons/web/static/src')
7 files changed, 11 insertions, 11 deletions
diff --git a/addons/web/static/src/js/core/abstract_service.js b/addons/web/static/src/js/core/abstract_service.js index e6840cc92f9..c907b28f7c8 100644 --- a/addons/web/static/src/js/core/abstract_service.js +++ b/addons/web/static/src/js/core/abstract_service.js @@ -7,7 +7,6 @@ var ServicesMixin = require('web.ServicesMixin'); var AbstractService = Class.extend(Mixins.EventDispatcherMixin, ServicesMixin, { dependencies: [], - name: null, init: function (parent) { Mixins.EventDispatcherMixin.init.call(this, arguments); this.setParent(parent); diff --git a/addons/web/static/src/js/core/service_mixins.js b/addons/web/static/src/js/core/service_mixins.js index 850e9983a74..170d5dd098a 100644 --- a/addons/web/static/src/js/core/service_mixins.js +++ b/addons/web/static/src/js/core/service_mixins.js @@ -20,12 +20,18 @@ var ServiceProviderMixin = { // add already registered services from the service registry _.each(core.serviceRegistry.map, function (Service, serviceName) { + if (serviceName in self.UndeployedServices) { + throw new Error('Service "' + serviceName + '" is already loaded.'); + } self.UndeployedServices[serviceName] = Service; }); this._deployServices(); // listen on newly added services core.serviceRegistry.onAdd(function (serviceName, Service) { + if (serviceName in self.services || serviceName in self.UndeployedServices) { + throw new Error('Service "' + serviceName + '" is already loaded.'); + } self.UndeployedServices[serviceName] = Service; self._deployServices(); }); @@ -42,16 +48,16 @@ var ServiceProviderMixin = { var self = this; var done = false; while (!done) { - var Service = _.find(this.UndeployedServices, function (Service) { + var serviceName = _.findKey(this.UndeployedServices, function (Service) { // no missing dependency return !_.some(Service.prototype.dependencies, function (depName) { return !self.services[depName]; }); }); - if (Service) { - var service = new Service(this); - this.services[Service.prototype.name] = service; - delete this.UndeployedServices[Service.prototype.name]; + if (serviceName) { + var service = new this.UndeployedServices[serviceName](this); + this.services[serviceName] = service; + delete this.UndeployedServices[serviceName]; service.start(); } else { done = true; diff --git a/addons/web/static/src/js/services/ajax_service.js b/addons/web/static/src/js/services/ajax_service.js index 3446f651a59..bf754792932 100644 --- a/addons/web/static/src/js/services/ajax_service.js +++ b/addons/web/static/src/js/services/ajax_service.js @@ -6,7 +6,6 @@ var core = require('web.core'); var session = require('web.session'); var AjaxService = AbstractService.extend({ - name: 'ajax', rpc: function (route, args, options, target) { return $.Deferred(function (def) { session.rpc(route, args, options).then(function () { diff --git a/addons/web/static/src/js/services/local_storage_service.js b/addons/web/static/src/js/services/local_storage_service.js index 016ed08f2b7..694dc6dacd0 100644 --- a/addons/web/static/src/js/services/local_storage_service.js +++ b/addons/web/static/src/js/services/local_storage_service.js @@ -10,7 +10,6 @@ var core = require('web.core'); var localStorage = require('web.local_storage'); var LocalStorageService = AbstractStorageService.extend({ - name: 'local_storage', storage: localStorage, }); diff --git a/addons/web/static/src/js/services/notification_service.js b/addons/web/static/src/js/services/notification_service.js index 2196626a4f5..cc87305a6a2 100644 --- a/addons/web/static/src/js/services/notification_service.js +++ b/addons/web/static/src/js/services/notification_service.js @@ -18,7 +18,6 @@ var id = 0; */ var NotificationService = AbstractService.extend({ - name: 'notification', custom_events: { close: '_onCloseNotification', diff --git a/addons/web/static/src/js/services/report_service.js b/addons/web/static/src/js/services/report_service.js index cfd62c0499f..006c546041a 100644 --- a/addons/web/static/src/js/services/report_service.js +++ b/addons/web/static/src/js/services/report_service.js @@ -9,7 +9,6 @@ var AbstractService = require('web.AbstractService'); var core = require('web.core'); var ReportService = AbstractService.extend({ - name: 'report', dependencies: ['ajax'], /** diff --git a/addons/web/static/src/js/services/session_storage_service.js b/addons/web/static/src/js/services/session_storage_service.js index b9441f2e173..41c47af3923 100644 --- a/addons/web/static/src/js/services/session_storage_service.js +++ b/addons/web/static/src/js/services/session_storage_service.js @@ -10,7 +10,6 @@ var core = require('web.core'); var sessionStorage = require('web.sessionStorage'); var SessionStorageService = AbstractStorageService.extend({ - name: 'session_storage', storage: sessionStorage, }); |
