List of usage examples for com.amazonaws.services.cognitoidp.model GetUserResult getUsername
public String getUsername()
The user name of the user you wish to retrieve from the get user request.
From source file:com.kdgregory.example.cognito.servlets.ValidatedAction.java
License:Apache License
@Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String accessToken = null;/* w ww . jav a2 s . c o m*/ String refreshToken = null; logger.debug("attempting validation"); Cookie[] cookies = request.getCookies(); if (cookies == null) { logger.warn("request from {} did not have cookies", request.getRemoteAddr()); reportResult(response, Constants.ResponseMessages.NOT_LOGGED_IN); return; } for (Cookie cookie : cookies) { if (cookie.getName().equals(Constants.CookieNames.ACCESS_TOKEN)) accessToken = cookie.getValue(); if (cookie.getName().equals(Constants.CookieNames.REFRESH_TOKEN)) refreshToken = cookie.getValue(); } if (tokenCache.checkToken(accessToken)) { logger.debug("token was found in cache, not going to AWS"); reportResult(response, Constants.ResponseMessages.LOGGED_IN); return; } try { GetUserRequest authRequest = new GetUserRequest().withAccessToken(accessToken); GetUserResult authResponse = cognitoClient.getUser(authRequest); logger.debug("successful validation for {}", authResponse.getUsername()); tokenCache.addToken(accessToken); reportResult(response, Constants.ResponseMessages.LOGGED_IN); } catch (NotAuthorizedException ex) { if (ex.getErrorMessage().equals("Access Token has expired")) { attemptRefresh(refreshToken, response); } else { logger.warn("exception during validation: {}", ex.getMessage()); reportResult(response, Constants.ResponseMessages.NOT_LOGGED_IN); } } catch (TooManyRequestsException ex) { logger.warn("caught TooManyRequestsException, delaying then retrying"); ThreadUtil.sleepQuietly(250); doPost(request, response); } }