(getUserDetailsService().loadUserByUsername(cookieTokens[0]));
//if no persistentLogin info returned from UserDetailsService, abort
//as cookie was misleading or manually invalidated.
PersistentLogin login = userDetails.getPersistentLogin();
if (login == null)
{
throw new InvalidCookieException(
"No PersistentLogin record in repository");
}
// Check signature of token matches remaining details.
// Must do this after user lookup,
String expectedTokenSignature = login.getTokenValue();
long expectedExpiryDate = login.getTokenExpirationDate();
if (tokenExpiryTime != expectedExpiryDate)
{
throw new InvalidCookieException(
"Cookie token[1] contained expirationDate '"