}
String verification = request.getParameter("code");
Verifier verifier = new Verifier(verification);
Token accessToken = null;
//workaround google API
if (OAuthRealm._.getServiceBulderByPath(path).provider.equalsIgnoreCase("google")) {
Google2Api api = new Google2Api();
Service config = OAuthRealm._.getServiceBulderByPath(path);
OAuthRequest req = new OAuthRequest(api.getAccessTokenVerb(), api.getAccessTokenEndpoint());
req.addBodyParameter(OAuthConstants.CLIENT_ID, config.getApiKey());
req.addBodyParameter(OAuthConstants.CLIENT_SECRET, config.getApiSecret());
req.addBodyParameter(OAuthConstants.CODE, verifier.getValue());
// jetty.port.jetty
req.addBodyParameter(OAuthConstants.REDIRECT_URI, config.getReturnURL());
req.addBodyParameter("grant_type", "authorization_code");
String responce = req.send().getBody();
JSONTokener tokener = new JSONTokener(responce);
try {
JSONObject root = new JSONObject(tokener);
String access_token = root.getString("access_token");
String token = OAuthEncoder.decode(access_token);
accessToken = new Token(token, "", responce);
} catch (JSONException e) {
throw new IOException(e);
}