Skip to content

Instantly share code, notes, and snippets.

@ldavison
Forked from jbrechtel/SimpleTask.java
Created June 2, 2011 15:07
Show Gist options
  • Save ldavison/1004607 to your computer and use it in GitHub Desktop.
Save ldavison/1004607 to your computer and use it in GitHub Desktop.
package com.foo.bar;
import android.os.AsyncTask;
import android.util.Log;
public abstract class SimpleTask extends AsyncTask<Void, Void, Boolean> {
private final AsyncTask waitTask;
public SimpleTask(AsyncTask waitTask) {
this.waitTask = waitTask;
}
public SimpleTask() {
this(null);
}
abstract protected Boolean background();
abstract protected void foreground();
@Override
protected Boolean doInBackground(Void... voids) {
if(waitTask != null) {
try {
waitTask.get();
} catch (Exception e) {
Log.d("telephone_game", e.toString());
}
}
return background();
}
@Override
protected void onPostExecute(Boolean success) {
if(success)
foreground();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment