package com.shamanland.facebook.likebutton;
import android.os.AsyncTask;
import com.shamanland.facebook.likebutton.FacebookLinkStatProcessor.Result;
import java.lang.ref.WeakReference;
public class FacebookLinkStatTask extends AsyncTask<String, Void, Result> {
public interface Listener {
void onPostExecute(Result result);
}
private final FacebookLinkStatProcessor mProcessor;
private final WeakReference<Listener> mListener;
public FacebookLinkStatTask(FacebookLinkStatProcessor processor, Listener listener) {
mProcessor = processor;
mListener = new WeakReference<Listener>(listener);
}
@Override
protected Result doInBackground(String... params) {
try {
return mProcessor.processUrl(params[0]);
} catch (Throwable ex) {
return null;
}
}
@Override
protected void onPostExecute(Result result) {
Listener listener = mListener.get();
if (listener != null) {
listener.onPostExecute(result);
}
}
}