@Override
  protected void onPostExecute(Object result) {

    isFinished = true;

    mListener.onTaskFinished(result);
    super.onPostExecute(result);
  }
 @Override
 protected void onPreExecute() {
   mListener.onTaskStart();
   super.onPreExecute();
 }
 @Override
 protected void onCancelled() {
   this.cancel(true);
   mListener.onCancelled();
   super.onCancelled();
 }
 @Override
 protected Object doInBackground(String... params) {
   return mListener.onTaskRunning(params);
 }