12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- /**
- * Created by robin on 12/11/16.
- */
-
- (function () {
- 'use strict';
- angular.module('luticate2Utils')
- .factory('luNotificationsBusiness', ['luNotificationsDataAccess', function(luNotificationsDataAccess) {
-
- var luNotificationsBusiness = {};
-
- luNotificationsBusiness.EVENT_CREATE = 'EVENT_CREATE';
-
- luNotificationsBusiness.EVENT_UPDATE = 'EVENT_UPDATE';
-
- luNotificationsBusiness.EVENT_DELETE = 'EVENT_DELETE';
-
- luNotificationsBusiness.dataAccesses = {};
-
-
- function callbackWrapper(callback) {
- return function (eventName, entityType, oldEntity, newEntity) {
- var dataAccess = luNotificationsBusiness.dataAccesses[entityType];
- if (dataAccess != null && dataAccess.initDbo != null) {
- oldEntity = dataAccess.initDbo(oldEntity, dataAccess.TYPE_MODEL);
- newEntity = dataAccess.initDbo(newEntity, dataAccess.TYPE_MODEL);
- }
- return callback(eventName, entityType, oldEntity, newEntity);
- };
- }
-
- luNotificationsBusiness.init = function (dataAccesses) {
- luNotificationsBusiness.dataAccesses = dataAccesses;
- luNotificationsDataAccess.init();
- };
-
- luNotificationsBusiness.addEventCreateCallback = function (entityType, callback) {
- luNotificationsDataAccess.addCallback(luNotificationsBusiness.EVENT_CREATE, entityType,
- callbackWrapper(callback));
- };
-
- luNotificationsBusiness.addEventUpdateCallback = function (entityType, callback) {
- luNotificationsDataAccess.addCallback(luNotificationsBusiness.EVENT_UPDATE, entityType,
- callbackWrapper(callback));
- };
-
- luNotificationsBusiness.addEventDeleteCallback = function (entityType, callback) {
- luNotificationsDataAccess.addCallback(luNotificationsBusiness.EVENT_DELETE, entityType,
- callbackWrapper(callback));
- };
-
- luNotificationsBusiness.addEventCrudCallback = function (entityType, callback) {
- luNotificationsBusiness.addEventCreateCallback(entityType, callback);
- luNotificationsBusiness.addEventUpdateCallback(entityType, callback);
- luNotificationsBusiness.addEventDeleteCallback(entityType, callback);
- };
-
-
-
-
- return luNotificationsBusiness;
-
- }]);
- })();
|