--- /dev/null
+package org.average.whereami;
+
+import com.google.api.client.extensions.android2.AndroidHttp;
+import com.google.api.client.googleapis.GoogleHeaders;
+import com.google.api.client.http.HttpRequest;
+import com.google.api.client.http.HttpResponse;
+import com.google.api.client.http.HttpResponseException;
+import com.google.api.client.http.HttpTransport;
+import com.google.api.client.util.DateTime;
+
+import android.util.Log;
+import android.os.SystemClock;
+
+public final class Location extends Oracle {
+ @Override
+ public final String getResult() {
+ SystemClock.sleep(6000);
+ return "Response from Location.getResult";
+ }
+}
--- /dev/null
+package org.average.whereami;
+
+import com.google.api.client.extensions.android2.AndroidHttp;
+import com.google.api.client.googleapis.GoogleHeaders;
+import com.google.api.client.http.HttpRequest;
+import com.google.api.client.http.HttpResponse;
+import com.google.api.client.http.HttpResponseException;
+import com.google.api.client.http.HttpTransport;
+import com.google.api.client.util.DateTime;
+
+//import com.google.api.services.calendar.CalendarClient;
+//import com.google.api.services.calendar.CalendarRequestInitializer;
+//import com.google.api.services.calendar.CalendarUrl;
+//import com.google.api.services.calendar.model.CalendarEntry;
+//import com.google.api.services.calendar.model.CalendarFeed;
+//import com.google.common.collect.Lists;
+
+import android.util.Log;
+import android.os.SystemClock;
+
+public final class PhoneLog extends Oracle {
+ @Override
+ public final String getResult() {
+ SystemClock.sleep(5000);
+ return "Response from PhoneLog.getResult";
+ }
+}
package org.average.whereami;
import org.average.whereami.WhereAmIprefs;
+import org.average.whereami.Oracle;
+import org.average.whereami.PhoneLog;
+import org.average.whereami.Location;
import android.app.Activity;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.os.AsyncTask;
import android.os.Handler;
-import android.os.SystemClock;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.content.BroadcastReceiver;
private class UpdateTarget {
private TextView tv;
- private Integer updater; // will be the function/object
+ private Oracle updater;
private BgUpdate task;
private class BgUpdate extends AsyncTask<Void, Void, String> {
@Override
protected String doInBackground(Void... params) {
Log.w("WhereAmI", "BgUpdate " + updater + " starting");
- SystemClock.sleep(5000); // real job do be done here
- Log.w("WhereAmI", "BgUpdate about to return");
- return "5 seconds passed in " + updater;
+ return updater.getResult();
}
@Override
}
}
- public UpdateTarget(TextView tv, Integer updater) {
+ public UpdateTarget(TextView tv, Oracle updater) {
this.tv = tv;
this.updater = updater;
}
tvd = (TextView)findViewById(R.id.date);
tvs = (TextView)findViewById(R.id.timestamp);
ut = new UpdateTarget[] {
- new UpdateTarget((TextView)findViewById(R.id.location), 1),
- new UpdateTarget((TextView)findViewById(R.id.phonecall), 2)
+ new UpdateTarget((TextView)findViewById(R.id.location),
+ new PhoneLog()),
+ new UpdateTarget((TextView)findViewById(R.id.phonecall),
+ new Location())
};
Log.w("WhereAmI", "created UI, about to start update task");
mHandler.post(updateClock);