1 define([], function() {
4 angular.module('app.gbp').service('EpgService', EpgService);
6 EpgService.$inject = ['Restangular'];
8 function EpgService(Restangular) {
10 this.createObject = createObject;
21 this.setData = setData;
24 this.deleteEpg = deleteEpg;
28 * fills Epg object with data
31 function setData(data) {
32 this.data.id = data.id;
33 this.data.name = data.name;
34 this.data.description = data.description;
35 this.data['intra-group-policy'] = data['intra-group-policy'];
37 this.data['consumer-named-selector'] = data['consumer-named-selector'];
38 this.data['provider-named-selector'] = data['provider-named-selector'];
39 this.data['consumer-target-selector'] = data['consumer-target-selector'];
40 this.data['provider-target-selector'] = data['provider-target-selector'];
42 this.data['network-domain'] = data['network-domain'];
43 this.data.parent = data.parent;
45 this.data.requirement = data.requirement;
46 this.data.capability = data.capability;
50 * gets one Epg object from Restconf
54 function get(idEpg, idTenant, apiType, successCallback) {
57 var restObj = Restangular.one('restconf').one(apiType).one('policy:tenants').one('tenant')
58 .one(idTenant).one('policy').one('endpoint-group').one(this.data.id || idEpg);
60 return restObj.get().then(function(data) {
61 self.setData(data['endpoint-group'][0]);
66 function put(idTenant, successCallback) {
69 var restObj = Restangular.one('restconf').one('config').one('policy:tenants').one('tenant')
70 .one(idTenant).one('policy').one('endpoint-group').one(self.data.id),
71 dataObj = {'endpoint-group': [self.data]};
73 return restObj.customPUT(dataObj).then(function(data) {
74 successCallback(data);
80 function deleteEpg(idTenant, successCallback) {
83 var restObj = Restangular.one('restconf').one('config').one('policy:tenants').one('tenant')
84 .one(idTenant).one('policy').one('endpoint-group').one(self.data.id);
86 return restObj.remove().then(function(data) {
87 successCallback(data);
95 * creates Epg object and fills it with data if available
99 function createObject(data) {