Fix sonar issues
[clamp.git] / ui-react / src / api / UserService.js
index 8145395..8da6e3a 100644 (file)
  */
 
 export default class UserService {
-
-       static LOGIN() {
+       static notLoggedUserName='Anonymous';
+       static login() {
                return fetch('/restservices/clds/v1/user/getUser', {
                                method: 'GET',
-                               credentials: 'include',
+                               credentials: 'same-origin'
                        })
                .then(function (response) {
+                       console.debug("getUser response received, status code:", response.status);
                        if (response.ok) {
-                               console.log("getUser response received: ", response.status);
                                return response.text();
                        } else {
-                               console.error("getUser failed with status code: ",response.status);
-                               return "Anonymous";
+                               console.error("getUser response is nok");
+                               return UserService.notLoggedUserName;
                        }
                })
                .then(function (data) {
-                       console.log ("User connected:",data)
+                       console.info ("User connected:",data)
                        return data;
                })
                .catch(function(error) {
-                       console.error("getUser error received",error);
-                       return "Anonymous";
+                       console.warn("getUser error received, user set to: ",UserService.notLoggedUserName);
+                       console.error("getUser error:",error);
+                       return UserService.notLoggedUserName;
+               });
+       }
+       
+       static logout() {
+               return fetch('/restservices/clds/v1/user/logout', {
+                       method: 'POST',
+                       credentials: 'same-origin'
+               })
+               .then(function (response) {
+                       console.debug("logout response received, status code:", response.status);
+                       if (response.ok) {
+                               return response.text();
+                       } else {
+                               console.error("logout response is nok");
+                               return UserService.notLoggedUserName;
+                       }
+               })
+               .then(function (data) {
+                       console.info ("User disconnected:",data)
+                       return data;
+               })
+               .catch(function(error) {
+                       console.warn("logout error received, user set to: ",UserService.notLoggedUserName);
+                       console.error("logout error:",error);
+                       return UserService.notLoggedUserName;
                });
        }
-}
 
+       static getUserInfo() {
+               return fetch('/restservices/clds/v1/clds/cldsInfo', {
+                               method: 'GET',
+                               credentials: 'same-origin'
+                       })
+               .then(function (response) {
+                       console.debug("getUserInfo response received, status code:", response.status);
+                       if (response.ok) {
+                               return response.json();
+                       }
+               })
+               .then(function (data) {
+                       console.info ("User info received:",data)
+                       return data;
+               })
+               .catch(function(error) {
+                       console.warn("getUserInfo error received, user set to: ",UserService.notLoggedUserName);
+                       console.error("getUserInfo error:",error);
+                       return;
+               });
+       }
+}