jcabrerizo commented on a change in pull request #159: Manage backend errors
including expired sessions
URL: https://github.com/apache/brooklyn-ui/pull/159#discussion_r365737214
##########
File path: ui-modules/utils/server-status/server-status.js
##########
@@ -55,7 +56,28 @@ export function BrServerStatusDirective() {
let state = BrServerStatusModalController.STATES.OK;
let stateData = null;
if (error) {
- state = BrServerStatusModalController.STATES.NO_CONNECTION;
+ stateData = response.data;
+
+ if (stateData && stateData.SESSION_AGE_EXCEEDED) {
+ state =
BrServerStatusModalController.STATES.SESSION_AGE_EXCEEDED;
+ } else if (stateData && stateData.SESSION_INVALIDATED) {
+ state =
BrServerStatusModalController.STATES.SESSION_INVALIDATED;
+ }else if(response.status === 404) {
+ state = BrServerStatusModalController.STATES.NO_CONNECTION;
+ }else if(response.status === 401 || response.status === 403 ) {
+ state =
BrServerStatusModalController.STATES.USER_NOT_AUTHORIZED;
+ }else {
+ if (previousState === null || previousState ==
BrServerStatusModalController.STATES.OK){
+ state =
BrServerStatusModalController.STATES.OTHER_ERROR;
+ } else {
+ // we're now getting a new server error, possibly
because the old error has expired
+ // but changing the message for the user would be
confusing so don't do that!
+ // eg we get a 405 after a 307 (which the browser
handles automatically) if redirected to Google for login
+ console.log("Server responded \"" + stateData + "\"
after previous problem \"" + previousState + "\"");
Review comment:
Done. Thanks for pointed it
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services