From cc6ade49171627cd89075ab91cde9317196989c2 Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Thu, 26 Apr 2018 21:19:22 -0700 Subject: [PATCH] GUACAMOLE-526: Add convenience callbacks for ignoring or (quietly) warning of REST errors. --- .../app/rest/services/requestService.js | 26 ++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/guacamole/src/main/webapp/app/rest/services/requestService.js b/guacamole/src/main/webapp/app/rest/services/requestService.js index b2f709b14..9aef12486 100644 --- a/guacamole/src/main/webapp/app/rest/services/requestService.js +++ b/guacamole/src/main/webapp/app/rest/services/requestService.js @@ -91,6 +91,30 @@ angular.module('rest').factory('requestService', ['$injector', }); }; - return service; + /** + * Promise error callback which ignores all rejections due to REST errors, + * but logs all other rejections, such as those due to JavaScript errors. + * This callback should be used in favor of angular.noop in cases where + * a REST response is being handled but REST errors should be ignored. + * + * @constant + * @type Function + */ + service.IGNORE = service.createErrorCallback(angular.noop); + + /** + * Promise error callback which logs all rejections due to REST errors as + * warnings to the browser console, and logs all other rejections as + * errors. This callback should be used in favor of angular.noop or + * @link{IGNORE} if REST errors are simply not expected. + * + * @constant + * @type Function + */ + service.WARN = service.createErrorCallback(function warnRequestFailed(error) { + $log.warn(error.type, error.message || error.translatableMessage); + }); + + return service; }]);