X-Git-Url: http://www.average.org/gitweb/?p=WhereAmI.git;a=blobdiff_plain;f=src%2Forg%2Faverage%2Fwhereami%2FOracle.java;h=848cf278b4cab94f28dc215f34519da971943947;hp=b3d992e410a437fe0e9852407aa7d830854696f5;hb=99db21a723e47ecd70fa490795379ab2344469dd;hpb=36b6777a469a0ab1a15016b2d34b9e2aa10a3c0a diff --git a/src/org/average/whereami/Oracle.java b/src/org/average/whereami/Oracle.java index b3d992e..848cf27 100644 --- a/src/org/average/whereami/Oracle.java +++ b/src/org/average/whereami/Oracle.java @@ -1,100 +1,14 @@ package org.average.whereami; -import org.average.whereami.PersistentStore; - -import java.io.IOException; -import com.google.api.client.http.HttpTransport; -import java.util.logging.Handler; -import java.util.logging.Level; -import java.util.logging.LogRecord; -import java.util.logging.Logger; - -import com.google.api.client.extensions.android2.AndroidHttp; -import com.google.api.client.auth.oauth2.draft10.AccessTokenResponse; -import com.google.api.client.googleapis.auth.oauth2.draft10.GoogleAccessProtectedResource; -import com.google.api.client.http.HttpResponseException; -import com.google.api.client.http.HttpTransport; -import com.google.api.client.http.javanet.NetHttpTransport; -import com.google.api.client.json.JsonFactory; -import com.google.api.client.json.jackson.JacksonFactory; - -import android.content.res.Resources; -import android.util.Log; +import org.average.whereami.APIBase; abstract public class Oracle { - final String TAG = getClass().getName(); - - static public PersistentStore store; - static public HttpTransport httpTransport = - AndroidHttp.newCompatibleTransport(); - static public JsonFactory jsonFactory = new JacksonFactory(); - static public String authErrorMessage; + public APIBase base; - public Oracle(final Resources res, final PersistentStore store) { - authErrorMessage = res.getString(R.string.autherror); - this.store = store; - enableLogging(); - } - - private class MyAccessProtectedResource - extends GoogleAccessProtectedResource { - - public MyAccessProtectedResource( - String accessToken, - HttpTransport transport, - JsonFactory jsonFactory, - String clientId, - String clientSecret, - String refreshToken) { - super(accessToken, transport, jsonFactory, - clientId, clientSecret, refreshToken); - } - - @Override - public void onAccessToken(String accessToken) { - Log.v(TAG, "Update access token to \"" - + accessToken + "\""); - store.updateAccessToken( accessToken); - } - - @Override - protected boolean executeRefreshToken() throws IOException { - Log.v(TAG, "executeRefreshToken was called"); - return super.executeRefreshToken(); - } - } - - public MyAccessProtectedResource - newMyAccessProtectedResource() { - AccessTokenResponse token = store.readTokens(); - Log.v(TAG, "tokens - access: \"" + token.accessToken + - "\", refresh: \"" + token.refreshToken + - "\", client_id: \"" + ClientCredentials.CLIENT_ID + - "\", client_secret: \"" + - ClientCredentials.CLIENT_SECRET + - "\""); - return new MyAccessProtectedResource( - token.accessToken, httpTransport, jsonFactory, - ClientCredentials.CLIENT_ID, - ClientCredentials.CLIENT_SECRET, - token.refreshToken); + public Oracle(APIBase apibase) { + this.base = apibase; } abstract public String getResult(); - - public static void enableLogging() { - Logger logger = Logger.getLogger(HttpTransport.class.getName()); - logger.setLevel(Level.CONFIG); - logger.addHandler(new Handler() { - @Override - public void close() throws SecurityException {} - @Override - public void flush() {} - @Override - public void publish(LogRecord record) { - Log.v("HttpTransport", record.getMessage()); - } - }); - } }