Removing restangular (#3595)
* Removed Restangular from the codebase
* updated changelog
* fixed missing 'return' statements, typo, incorrect indexing
* API Service methods now resolve explicitly
* Rejected promises throw instead of returning
* Removed unrelated changes
* removed from browserify
* Remove unnecessary success message
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8f99ed0..d37e64b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -116,6 +116,7 @@
- Fixed Traffic Ops Golang POST servers/id/deliveryservice double-logging errors.
- Issue #4131 - The "Clone Delivery Service Assignments" menu item is hidden on a cache when the cache has zero delivery service assignments to clone.
- Traffic Portal - Turn off TLSv1
+- Removed Traffic Portal dependency on Restangular
### Deprecated/Removed
- The TO API `cachegroup_fallbacks` endpoint is now deprecated
diff --git a/traffic_portal/app/src/common/api/HttpService.js b/traffic_portal/app/src/common/api/HttpService.js
index 5dcf7b7..1089ae4 100644
--- a/traffic_portal/app/src/common/api/HttpService.js
+++ b/traffic_portal/app/src/common/api/HttpService.js
@@ -20,7 +20,7 @@
var HttpService = function($http, $q) {
this.get = function(resource) {
- var deferred = $q.defer();
+ const deferred = $q.defer();
$http.get(resource)
.then(
@@ -36,7 +36,7 @@
};
this.post = function(resource, payload) {
- var deferred = $q.defer();
+ const deferred = $q.defer();
$http.post(resource, payload)
.then(
@@ -52,7 +52,7 @@
};
this.put = function(resource, payload) {
- var deferred = $q.defer();
+ const deferred = $q.defer();
$http.put(resource, payload)
.then(
@@ -68,7 +68,7 @@
};
this.delete = function(resource) {
- var deferred = $q.defer();
+ const deferred = $q.defer();
$http.delete(resource)
.then(
diff --git a/traffic_portal/app/src/common/api/ToolsService.js b/traffic_portal/app/src/common/api/ToolsService.js
index 2ceb61c..ad980aa 100644
--- a/traffic_portal/app/src/common/api/ToolsService.js
+++ b/traffic_portal/app/src/common/api/ToolsService.js
@@ -17,52 +17,41 @@
* under the License.
*/
-var ToolsService = function($http, $q, Restangular, locationUtils, messageModel, ENV) {
+var ToolsService = function($http, messageModel, ENV) {
this.getOSVersions = function() {
- var request = $q.defer();
-
- $http.get(ENV.api['root'] + "osversions")
- .then(
+ return $http.get(ENV.api['root'] + "osversions").then(
function(result) {
- request.resolve(result.data.response);
+ return result.data.response;
},
- function() {
- request.reject();
+ function(err) {
+ throw err;
}
);
-
- return request.promise;
};
this.generateISO = function(iso) {
- var request = $q.defer();
-
-
- var respType = 'json';
- if (iso.stream == 'yes') {
+ let respType = 'json';
+ if (iso.stream === 'yes') {
respType = 'arraybuffer';
}
- $http.post(ENV.api['root'] + "isos", iso, { responseType:respType })
- .then(
- function(result) {
- request.resolve(result.data.response);
- if (iso.stream == 'yes') {
- var isoName = iso.hostName + "." + iso.domainName + "-" + iso.osversionDir + ".iso";
- download(result.data, isoName);
- }
- },
- function(fault) {
- messageModel.setMessages(fault.data.alerts, false);
- request.reject();
+ return $http.post(ENV.api['root'] + "isos", iso, { responseType:respType }).then(
+ function(result) {
+ if (iso.stream === 'yes') {
+ const isoName = iso.hostName + "." + iso.domainName + "-" + iso.osversionDir + ".iso";
+ download(result.data, isoName);
}
- );
-
- return request.promise;
+ return result.data.response;
+ },
+ function(err) {
+ messageModel.setMessages(err.data.alerts, false);
+ throw err;
+ }
+ );
};
};
-ToolsService.$inject = ['$http', '$q', 'Restangular', 'locationUtils', 'messageModel', 'ENV'];
+ToolsService.$inject = ['$http', 'messageModel', 'ENV'];
module.exports = ToolsService;
diff --git a/traffic_portal/app/src/scripts/shared-libs.js b/traffic_portal/app/src/scripts/shared-libs.js
index e3367d8..730bc1c 100644
--- a/traffic_portal/app/src/scripts/shared-libs.js
+++ b/traffic_portal/app/src/scripts/shared-libs.js
@@ -42,9 +42,6 @@
// angular bootstrap context menu
require('contextMenu');
-// restangular
-require('restangular');
-
// jquery
require('jquery');
diff --git a/traffic_portal/bower.json b/traffic_portal/bower.json
index 8f99406..114adb3 100644
--- a/traffic_portal/bower.json
+++ b/traffic_portal/bower.json
@@ -18,7 +18,6 @@
"flot-axislabels": "release-2.0.1",
"font-awesome": "4.5.0",
"jquery": "2.0.0",
- "json3": "3.3.2",
- "restangular": "1.5.2"
+ "json3": "3.3.2"
}
}
diff --git a/traffic_portal/grunt/browserify2.js b/traffic_portal/grunt/browserify2.js
index f3f09f7..9f77bb8 100644
--- a/traffic_portal/grunt/browserify2.js
+++ b/traffic_portal/grunt/browserify2.js
@@ -6,9 +6,9 @@
* to you 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
@@ -42,8 +42,7 @@
'bootstrap-sass-official/assets/javascripts/bootstrap.min.js',
'es5-shim/es5-shim.min.js',
'jquery/jquery.min.js',
- 'json3/lib/json3.min.js',
- 'restangular/dist/restangular.min.js'
+ 'json3/lib/json3.min.js'
]
},
{
@@ -104,8 +103,7 @@
'bootstrap-sass-official/assets/javascripts/bootstrap.js',
'es5-shim/es5-shim.js',
'jquery/jquery.js',
- 'json3/lib/json3.js',
- 'restangular/dist/restangular.js'
+ 'json3/lib/json3.js'
]
},
{