1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
/**
* Service providing access to the tenants
* @author arnaud marhin<arnaud.marhin@orange.com>
*/
(function() {
'use strict';
angular
.module('moon')
.factory('policyService', policyService);
policyService.$inject = ['$resource', 'REST_URI', 'utilService', '$q'];
function policyService($resource, REST_URI, utilService, $q) {
return {
data: {
policy: $resource(REST_URI.POLICIES + ':policy_id', {}, {
query: {method: 'GET'},
create: { method: 'POST' },
update: { method: 'PATCH' },
remove: { method: 'DELETE' }
})
},
findAll: function () {
return this.data.policy.query().$promise.then(function (data) {
return utilService.transform(data, 'policies');
});
},
findAllWithCallback: function (callback) {
return this.data.policy.query().$promise.then(function (data) {
callback(utilService.transform(data, 'policies'));
});
},
findOneReturningPromise: function(policyId){
return this.data.policy.get({policy_id: policyId}).$promise;
},
findSomeWithCallback: function(policyListId, callback){
var _self = this;
if(policyListId.length === 0){
callback([]);
}
var promises = _(policyListId).map( function(policyId) {
return _self.findOneReturningPromise(policyId);
});
$q.all(promises).then( function(result) {
callback( _(result).map( function(resource) {
return utilService.transformOne(resource, 'policies');
}));
});
},
findOne: function (policyId) {
return this.data.policy.get({policy_id: policyId}).$promise.then(function (data) {
return utilService.transformOne(data, 'policies');
});
},
update: function (policy, callbackSuccess, callbackError) {
this.data.policy.update({policy_id: policy.id}, policy, callbackSuccess, callbackError);
},
delete: function (policy, callbackSuccess, callbackError ) {
this.data.policy.remove({policy_id: policy.id}, policy, callbackSuccess, callbackError);
}
}
}
})();
|