@Override
 protected void onDeleteComplete(int token, Object cookie, int result) {
   // cookie represents itemId
   if (cookie != null) {
     mCallback.onDeleteComplete();
   } else {
     mCallback.onClearComplete();
   }
   mCallback = null;
 }
 @Override
 protected void onQueryComplete(int token, Object cookie, android.database.Cursor cursor) {
   if (cursor == null) {
     mCallback = null;
     return;
   }
   // cookie represents itemId
   if (cookie != null) {
     mCallback.onCheckComplete(cursor.getCount() > 0);
   } else {
     Favorite[] favorites = new Favorite[cursor.getCount()];
     int count = 0;
     Cursor favoriteCursor = new Cursor(cursor);
     boolean any = favoriteCursor.moveToFirst();
     if (any) {
       do {
         favorites[count] = favoriteCursor.getFavorite();
         count++;
       } while (favoriteCursor.moveToNext());
     }
     mCallback.onQueryComplete(favorites);
   }
   mCallback = null;
 }
 @Override
 protected void onInsertComplete(int token, Object cookie, Uri uri) {
   mCallback.onInsertComplete();
   mCallback = null;
 }