Map<String, Object> params = new HashMap<String, Object>();
for (Map.Entry<String, String[]> entry : request().queryString().entrySet())
params.put(entry.getKey(), entry.getValue());
OpenIDLoginInformation info = (OpenIDLoginInformation) Cache.get(Constants.Cache.OPENID_LOGIN_KEY_PREFIX + sessionId);
String purpose = info.takeLoginPurpose();
try {
if ("login".equals(purpose))
return verifyOpenIDForLogin(receivingURL, params, info.getDiscoveryInformation());
if ("connect".equals(purpose))
return verifyOpenIDForConnection(receivingURL, params, info.getDiscoveryInformation());