diff options
Diffstat (limited to 'dcae_dmaapbc_webapp/src/main/webapp/app/dbcapp/datarouter/dr-pub-service.js')
-rw-r--r-- | dcae_dmaapbc_webapp/src/main/webapp/app/dbcapp/datarouter/dr-pub-service.js | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/dcae_dmaapbc_webapp/src/main/webapp/app/dbcapp/datarouter/dr-pub-service.js b/dcae_dmaapbc_webapp/src/main/webapp/app/dbcapp/datarouter/dr-pub-service.js new file mode 100644 index 0000000..f317c0f --- /dev/null +++ b/dcae_dmaapbc_webapp/src/main/webapp/app/dbcapp/datarouter/dr-pub-service.js @@ -0,0 +1,106 @@ +/*- + * ================================================================================ + * DCAE DMaaP Bus Controller Web Application + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ================================================================================ + */ +app.factory('DRPubService', function ($http, $q, $log) { + return { + /** + * Gets one page of data router publisher objects. + * @param {Number} pageNum - page number; e.g., 1 + * @param {Number} viewPerPage - number of items per page; e.g., 25 + * @return {JSON} Response object from remote side + */ + getPubsByPage: function(pageNum,viewPerPage) { + // cache control for IE + var cc = "&cc=" + new Date().getTime().toString(); + return $http({ + method: 'GET', + url: 'dr_pub?pageNum=' + pageNum + '&viewPerPage=' + viewPerPage + cc, + cache: false, + responseType: 'json' }) + .then(function(response) { + if (response.data == null || typeof response.data != 'object') + return $q.reject('DRPubService.getPubsByPage: response.data null or not object'); + else + return response.data; + }, + function(error) { + $log.error('DRPubService.getPubsByPage failed: ' + error); + return $q.reject(error.data); + }); + }, + + // Creates a new publisher. + addPub: function(pub) { + return $http({ + method: 'POST', + url: 'dr_pub', + data: pub, + responseType: 'json' }) + .then(function(response) { + // $log.debug('DRPubService.addPub: response: ' + JSON.stringify(response)); + if (response.data == null || typeof response.data != 'object') + return $q.reject('DRPubService.addPub: response.data null or not object'); + else + return response.data; + }, + function(error) { + $log.error('DRPubService.addPub failed: ' + error); + return $q.reject(error.data); + }); + }, + + // Updates an existing publisher. + updatePub: function(pub) { + return $http({ + method: 'PUT', + url: 'dr_pub/' + pub.pubId, + data: pub, + responseType: 'json' }) + .then(function(response) { + if (response.data == null || typeof response.data != 'object') + return $q.reject('DRPubService.updatePub: response.data null or not object'); + else + return response.data; + }, + function(error) { + $log.error('DRPubService.updatePub failed: ' + error); + return $q.reject(error.data); + }); + }, + + // Deletes the publisher with the specified ID. + deletePub: function(pubId) { + return $http({ + method: 'DELETE', + url: 'dr_pub/' + pubId, + responseType: 'json' }) + .then(function(response) { + if (response.data == null || typeof response.data != 'object') + return $q.reject('DRPubService.deletePub: response.data null or not object'); + else + return response.data; + }, + function(error) { + $log.error('DRPubService.deletePub failed: ' + error); + return $q.reject(error.data); + }); + }, + + }; +}); |