@Override
 public void handleMessage(Message msg) {
   super.handleMessage(msg);
   CallbackObject object = (CallbackObject) msg.obj;
   Request request = object.request;
   OnResultListener listener = object.listener;
   switch (msg.what) {
     case MESSAGE_SUCCESS:
       listener.onSuccess(request, object.result);
       break;
     case MESSAGE_FAILURE:
       listener.onFailure(request, -1, object.exception);
       break;
   }
 }