1 define([], function () {
4 angular.module('app.gbp').service('ContractService', ContractService);
6 ContractService.$inject = ['Restangular'];
8 function ContractService(Restangular) {
10 this.createObject = createObject;
13 * Contract constructor
20 this.setData = setData;
23 this.deleteContract = deleteContract;
27 * fills Contract object with data
30 function setData(data) {
31 this.data.id = data.id;
32 this.data.description = data.description;
33 this.data.parent = data.parent;
36 this.data['forwarding-context'] = data['forwarding-context'];
37 this.data.target = data.target;
38 this.data.subject = data.subject;
39 this.data.clause = data.clause;
40 this.data.quality = data.quality;
44 * gets one Contract object from Restconf
48 function get(idContract, idTenant, apiType) {
51 var restObj = Restangular.one('restconf').one(apiType).one('policy:tenants')
52 .one('tenant').one(idTenant).one('policy').one('contract').one(idContract);
54 return restObj.get().then(function (data) {
55 self.setData(data.contract[0]);
59 function put(id, successCallback) {
62 var restObj = Restangular.one('restconf').one('config').one('policy:tenants').one('tenant')
63 .one(id).one('policy').one('contract').one(self.data.id),
64 dataObj = { contract: [self.data] };
66 return restObj.customPUT(dataObj).then(function (data) {
67 successCallback(data);
73 function deleteContract(id, successCallback) {
76 var restObj = Restangular.one('restconf').one('config').one('policy:tenants').one('tenant')
77 .one(id).one('policy').one('contract').one(self.data.id);
79 return restObj.remove().then(function (data) {
80 successCallback(data);
89 * creates Contract object and fills it with data if available
93 function createObject(data) {
94 var obj = new Contract();
104 return ContractService;