public void validateToken(Token token, OAuthDataProvider provider) throws OAuthProblemException { if (token == null) { throw new OAuthProblemException(OAuth.Problems.TOKEN_REJECTED); } Long issuedAt = token.getIssuedAt(); Long lifetime = token.getLifetime(); if (lifetime != -1 && (issuedAt + lifetime < (System.currentTimeMillis() / 1000))) { provider.removeToken(token); throw new OAuthProblemException(OAuth.Problems.TOKEN_EXPIRED); } } }
public void removeToken(Token t) { for (Token token : oauthTokens.values()) { Client authNInfo = token.getClient(); if (t.getClient().getConsumerKey().equals(authNInfo.getConsumerKey())) { oauthTokens.remove(token.getTokenKey()); break; } } }
public static void validateMessage(OAuthMessage oAuthMessage, Client client, Token token, OAuthDataProvider provider, OAuthValidator validator) throws Exception { OAuthConsumer consumer = new OAuthConsumer(null, client.getConsumerKey(), client.getSecretKey(), null); OAuthAccessor accessor = new OAuthAccessor(consumer); if (token != null) { if (token instanceof RequestToken) { accessor.requestToken = token.getTokenKey(); } else { accessor.accessToken = token.getTokenKey(); } accessor.tokenSecret = token.getTokenSecret(); } try { validator.validateMessage(oAuthMessage, accessor); } catch (Exception ex) { if (token != null) { provider.removeToken(token); } throw ex; } if (token != null && validator instanceof DefaultOAuthValidator) { ((DefaultOAuthValidator)validator).validateToken(token, provider); } }