示例#1
0
 @Override
 public void onErrorResponse(VolleyError error) {
   parameters.result = error.toString();
   Log.d(TAG, "onErrorResponse :" + error.toString());
   parameters.responseCode = error.networkResponse.statusCode;
   if (listener != null) listener.faild(parameters);
 }
示例#2
0
    @Override
    public void onErrorResponse(VolleyError volleyError) {
      String errorMessage = volleyError.getMessage();

      if (volleyError.networkResponse != null && volleyError.networkResponse.data != null) {
        errorMessage = new String(volleyError.networkResponse.data);
      }

      Log.e(HomeApplication.TAG, "Cannot send device token: " + errorMessage);
      HomeEventBus.getDefault().post(new SendGcmTokenRequestFailedEvent(volleyError.getMessage()));
    }
示例#3
0
        @Override
        public void onErrorResponse(VolleyError error) {
          if (error.toString().equals(AUTH_ERROR)) {
            Toast.makeText(mContext, getString(R.string.incorrect_login), Toast.LENGTH_LONG).show();
          } else {
            ErrorDialogFragment errorDialog = ErrorDialogFragment.newInstance(error.toString());
            android.support.v4.app.FragmentManager fragmentManager = getSupportFragmentManager();
            errorDialog.show(fragmentManager, "dialog");
          }

          mLoginButton.setEnabled(true);
          mProgressBar.setVisibility(View.INVISIBLE);
        }
示例#4
0
 public void decodeVolleyError(VolleyError error) {
   long timeMs = error.getNetworkTimeMs();
   String msg = "time passed:" + timeMs;
   if (error.getCause() instanceof UnknownHostException) {
     msg += ", reason:" + "无法访问服务器";
   } else if (error.getCause() instanceof ConnectException) {
     msg += ", reason:" + "无法打开网络连接";
   } else if (error instanceof TimeoutError) {
     msg += ", reason:" + "连接超时";
   } else if (error instanceof ServerError) {
     msg += ", reason:" + "服务器错误";
   }
   Toast.makeText(MainApp.getContext(), msg, Toast.LENGTH_SHORT).show();
 }
示例#5
0
  private void onRebroadcastResponse(
      boolean successful, Broadcast result, VolleyError error, RebroadcastState state) {

    if (successful) {

      if (!state.rebroadcast) {
        // Delete the rebroadcast broadcast by user. Must be done before we update the
        // broadcast so that we can retrieve rebroadcastId for the old one.
        // This will not finish this activity, because this activity displays the
        // rebroadcasted broadcast instead of the rebroadcast broadcast itself, and this is
        // the desired behavior since it won't surprise user, and user can have the chance
        // to undo it.
        Broadcast broadcast = mBroadcastAdapter.getBroadcast();
        if (broadcast != null && broadcast.rebroadcastId != null) {
          EventBus.getDefault().post(new BroadcastDeletedEvent(broadcast.rebroadcastId));
        }
      }
      EventBus.getDefault().post(new BroadcastUpdatedEvent(result));
      ToastUtils.show(
          state.rebroadcast
              ? R.string.broadcast_rebroadcast_successful
              : R.string.broadcast_unrebroadcast_successful,
          this);

    } else {

      LogUtils.e(error.toString());
      Broadcast broadcast = mBroadcastAdapter.getBroadcast();
      if (broadcast != null) {
        boolean notified = false;
        if (error instanceof ApiError) {
          // Correct our local state if needed.
          ApiError apiError = (ApiError) error;
          Boolean shouldBeRebroadcasted = null;
          if (apiError.code == Codes.RebroadcastBroadcast.ALREADY_REBROADCASTED) {
            shouldBeRebroadcasted = true;
          } else if (apiError.code == Codes.RebroadcastBroadcast.NOT_REBROADCASTED_YET) {
            shouldBeRebroadcasted = false;
          }
          if (shouldBeRebroadcasted != null) {
            broadcast.fixRebroacasted(shouldBeRebroadcasted);
            EventBus.getDefault().post(new BroadcastUpdatedEvent(broadcast));
            notified = true;
          }
        }
        if (!notified) {
          // Must notify changed to reset pending status so that off-screen
          // items will be invalidated.
          mBroadcastAdapter.notifyBroadcastChanged();
        }
      }
      ToastUtils.show(
          getString(
              state.rebroadcast
                  ? R.string.broadcast_rebroadcast_failed_format
                  : R.string.broadcast_unrebroadcast_failed_format,
              ApiError.getErrorString(error, this)),
          this);
    }
  }
 @Override
 public void onErrorResponse(VolleyError volleyError) {
   synchronized (mNetworkRequestLock) {
     mNetworkRequestInProgress = false;
   }
   if (CMAccount.DEBUG) volleyError.printStackTrace();
   handleError();
 }
示例#7
0
  public static String parseVolleyError(VolleyError volleyError) {

    String message;

    if (volleyError.networkResponse != null) {
      message = new String(volleyError.networkResponse.data);
    } else {
      if (volleyError.getCause() instanceof UnknownHostException) {
        message =
            AppInitializer.getInstance().getString(R.string.error_message_no_internet_connection);
      } else {
        message = volleyError.getMessage();
      }
    }
    return message == null
        ? AppInitializer.getInstance().getString(R.string.error_message_no_internet_connection)
        : message;
  }
示例#8
0
 @Override
 public void onErrorResponse(VolleyError error) {
   if (handler != null) {
     handler.sendMessage(handler.obtainMessage(errorMsg, error.toString()));
   }
   if (isDismissDialog == true) {
     // UICommonUtil.getInstance(networkManagerContext).dismissDialog();
     CommonProgressDialog.hideProgress();
   }
 }
示例#9
0
 public static void e(T tag, VolleyError volleyError) {
   if (volleyError == null) {
     return;
   }
   String logText;
   if (volleyError.networkResponse == null) {
     logText = volleyError.getMessage();
   } else {
     logText =
         volleyError.getMessage()
             + ", status "
             + volleyError.networkResponse.statusCode
             + " - "
             + volleyError.networkResponse.toString();
   }
   Log.e(TAG + "-" + tag.toString(), logText, volleyError);
   addEntry(tag, LogLevel.w, logText);
   addEntry(tag, LogLevel.e, "StackTrace: " + getHTMLStringStackTrace(volleyError));
   crashlyticsLog(tag, volleyError, logText);
 }
示例#10
0
 @Override
 public void onErrorResponse(VolleyError error) {
   cancleDialog();
   error.printStackTrace();
   try {
     Log.e("Volley", new String(error.networkResponse.data, "GBK"));
   } catch (UnsupportedEncodingException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
   }
   MyUtil.alert("Çë¼ì²éÍøÂçºóÖØÊÔ", getContext());
 }
示例#11
0
 private void onDeleteBroadcastResponse(boolean successful, Broadcast result, VolleyError error) {
   if (successful) {
     ToastUtils.show(R.string.broadcast_delete_successful, this);
     EventBus.getDefault().post(new BroadcastDeletedEvent(mBroadcastId));
     finish();
   } else {
     LogUtils.e(error.toString());
     ToastUtils.show(
         getString(R.string.broadcast_delete_failed_format, ApiError.getErrorString(error, this)),
         this);
   }
 }
  /**
   * Handles the server error, tries to determine whether to show a stock message or to show a
   * message retrieved from the server.
   *
   * @param err
   * @param context
   * @return
   */
  private static String handleServerError(Object err, Context context) {
    VolleyError error = (VolleyError) err;

    NetworkResponse response = error.networkResponse;

    if (response != null) {
      switch (response.statusCode) {
        case 404:
        case 422:
        case 401:
          try {
            // server might return error like this { "error":
            // "Some error occured" }
            // Use "Gson" to parse the result
            HashMap<String, String> result =
                new Gson()
                    .fromJson(
                        new String(response.data),
                        new TypeToken<Map<String, String>>() {}.getType());

            if (result != null && result.containsKey("error")) {
              return result.get("error");
            }

          } catch (Exception e) {
            e.printStackTrace();
          }
          // invalid request
          return error.getMessage();

        default:
          return context.getResources().getString(R.string.generic_server_down);
      }
    }
    return context.getResources().getString(R.string.generic_error);
  }
        @Override
        public void onError(VolleyError error) {
          super.onError(error);
          Log.d(TAG, "the response --> " + error.toString());

          showToast("网络连接错误,无法播放!");

          /*
           * mVideoView.setVideoURI(Uri.parse(
           * "http://fx.72zhe.com/static/fx/sample.mp4")); videoUri =
           * "http://fx.72zhe.com/static/fx/sample.mp4";
           */

          // mVideoView.requestFocus();
          // updateShareTVdatabase(videoUri, mVideoView.getCurrentPosition());
          // mVideoView.start();
        }
示例#14
0
  private void onLikeResponse(
      boolean successful, Broadcast result, VolleyError error, LikeState state) {

    if (successful) {

      EventBus.getDefault().post(new BroadcastUpdatedEvent(result));
      ToastUtils.show(
          state.like ? R.string.broadcast_like_successful : R.string.broadcast_unlike_successful,
          this);

    } else {

      LogUtils.e(error.toString());
      Broadcast broadcast = mBroadcastAdapter.getBroadcast();
      if (broadcast != null) {
        boolean notified = false;
        if (error instanceof ApiError) {
          // Correct our local state if needed.
          ApiError apiError = (ApiError) error;
          Boolean shouldBeLiked = null;
          if (apiError.code == Codes.LikeBroadcast.ALREADY_LIKED) {
            shouldBeLiked = true;
          } else if (apiError.code == Codes.LikeBroadcast.NOT_LIKED_YET) {
            shouldBeLiked = false;
          }
          if (shouldBeLiked != null) {
            broadcast.fixLiked(shouldBeLiked);
            EventBus.getDefault().post(new BroadcastUpdatedEvent(broadcast));
            notified = true;
          }
        }
        if (!notified) {
          // Must notify changed to reset pending status so that off-screen
          // items will be invalidated.
          mBroadcastAdapter.notifyBroadcastChanged();
        }
      }
      ToastUtils.show(
          getString(
              state.like
                  ? R.string.broadcast_like_failed_format
                  : R.string.broadcast_unlike_failed_format,
              ApiError.getErrorString(error, this)),
          this);
    }
  }
示例#15
0
  private void onLoadBroadcastResponse(
      boolean successful, Broadcast result, VolleyError error, LoadBroadcastState state) {

    if (successful) {
      setBroadcast(result);
    } else {
      LogUtils.e(error.toString());
      ToastUtils.show(ApiError.getErrorString(error, this), this);
    }

    setBroadcastRefreshing(false);
    mLoadingBroadcastOrCommentList = false;

    if (successful && state.loadCommentList) {
      loadCommentList(false);
    }
  }
  /**
   * Shows a toast message, unless there is an authentication issue which will show an alert dialog.
   */
  public static void showToastOrAuthAlert(
      Context context, VolleyError error, String friendlyMessage) {
    if (context == null) return;

    String message = null;
    boolean isInvalidTokenError = false;
    JSONObject errorObj = VolleyUtils.volleyErrorToJSON(error);
    if (errorObj != null) {
      try {
        if (errorObj.has("error_description")) { // OAuth token request error
          message = (String) errorObj.get("error_description");
          String error_code = (String) errorObj.get("error");
          if (error_code != null
              && error_code.equals("invalid_request")
              && message.toLowerCase().contains("incorrect username or password")) {
            isInvalidTokenError = true;
          }
        } else {
          message = (String) errorObj.get("message");
          String error_code = (String) errorObj.get("error");
          if (error_code != null && error_code.equals("invalid_token")) {
            isInvalidTokenError = true;
          }
        }
      } catch (JSONException e) {
        AppLog.e(T.API, e);
      }
    } else {
      message = error.getMessage();
    }

    if (isInvalidTokenError && (context instanceof Activity)) {
      showAuthErrorView((Activity) context);
    } else {
      String fallbackErrorMessage =
          TextUtils.isEmpty(friendlyMessage)
              ? context.getString(R.string.error_generic)
              : friendlyMessage;
      if (message != null && message.contains("Limit reached")) {
        message = context.getString(R.string.limit_reached);
      }
      String errorMessage = TextUtils.isEmpty(message) ? fallbackErrorMessage : message;
      showToast(context, errorMessage, Duration.LONG);
    }
  }
示例#17
0
 private void onDeleteCommentResponse(
     boolean successful, Boolean result, VolleyError error, DeleteCommentState state) {
   if (successful) {
     ToastUtils.show(R.string.broadcast_comment_delete_successful, this);
     EventBus.getDefault().post(new BroadcastCommentDeletedEvent(mBroadcastId, state.commentId));
     if (mBroadcastAdapter.hasBroadcast()) {
       Broadcast broadcast = mBroadcastAdapter.getBroadcast();
       --broadcast.commentCount;
       EventBus.getDefault().post(new BroadcastUpdatedEvent(broadcast));
     }
   } else {
     LogUtils.e(error.toString());
     ToastUtils.show(
         getString(
             R.string.broadcast_comment_delete_failed_format,
             ApiError.getErrorString(error, this)),
         this);
   }
 }
示例#18
0
  private void onSendCommentResponse(boolean successful, Comment result, VolleyError error) {

    if (successful) {
      if (!mCanLoadMoreComments) {
        mCommentAdapter.add(result);
        fixCommentCount();
      } else {
        ToastUtils.show(R.string.broadcast_send_comment_successful, this);
      }
      mBroadcastCommentList.scrollToPosition(mAdapter.getItemCount() - 1);
      mCommentEdit.setText(null);
    } else {
      LogUtils.e(error.toString());
      ToastUtils.show(
          getString(
              R.string.broadcast_send_comment_failed_format, ApiError.getErrorString(error, this)),
          this);
    }

    setSendingComment(false);
  }
示例#19
0
  private void onLoadCommentListResponse(
      boolean successful, CommentList result, VolleyError error, LoadCommentListState state) {

    if (successful) {
      List<Comment> commentList = result.comments;
      mCanLoadMoreComments = commentList.size() == state.count;
      if (state.loadMore) {
        mCommentAdapter.addAll(commentList);
      } else {
        mCommentAdapter.replace(commentList);
      }
    } else {
      LogUtils.e(error.toString());
      ToastUtils.show(ApiError.getErrorString(error, this), this);
    }

    setCommentsRefreshing(false, state.loadMore);
    mLoadingBroadcastOrCommentList = false;

    if (successful) {
      fixCommentCount();
    }
  }
示例#20
0
  @Override
  public void onErrorResponse(VolleyError volleyError) {
    if (volleyError.networkResponse != null) {
      LOGD(
          TAG,
          "Can not load category list from server. "
              + "Status code: "
              + volleyError.networkResponse.statusCode
              + ". NetworkTimeMs: "
              + volleyError.getNetworkTimeMs());
    } else {
      LOGD(TAG, "Can not load category list from server. Network response is null.");
    }

    if (!NetworkUtils.hasNetworkConnection(this)) {
      LOGW(TAG, "Can not connect to internet. Network connection is not available.");
      Toast.makeText(this, R.string.no_network_connection, Toast.LENGTH_SHORT).show();
    }

    // We create default category list
    createDefaultCategoryList();

    startBrowseNewsActivity();
  }
示例#21
0
  /**
   * Get settlement history.
   *
   * @param symbol Instrument symbol. Send a bare series (e.g. XBU) to get data for the nearest
   *     expiring contract in that series. You can also send a timeframe, e.g.
   *     &#x60;XBU:monthly&#x60;. Timeframes are &#x60;daily&#x60;, &#x60;weekly&#x60;,
   *     &#x60;monthly&#x60;, &#x60;quarterly&#x60;, and &#x60;biquarterly&#x60;.
   * @param filter Generic table filter. Send JSON key/value pairs, such as
   *     &#x60;{\&quot;key\&quot;: \&quot;value\&quot;}&#x60;. You can key on individual fields, and
   *     do more advanced querying on timestamps. See the [Timestamp
   *     Docs](https://www.bitmex.com/app/restAPI#timestamp-filters) for more details.
   * @param columns Array of column names to fetch. If omitted, will return all columns. Note that
   *     this method will always return item keys, even when not specified, so you may receive more
   *     columns that you expect.
   * @param count Number of results to fetch.
   * @param start Starting point for results.
   * @param reverse If true, will sort results newest first.
   * @param startTime Starting date filter for results.
   * @param endTime Ending date filter for results.
   * @return List<Settlement>
   */
  public List<Settlement> settlementGet(
      String symbol,
      String filter,
      String columns,
      BigDecimal count,
      BigDecimal start,
      Boolean reverse,
      Date startTime,
      Date endTime)
      throws TimeoutException, ExecutionException, InterruptedException, ApiException {
    Object postBody = null;

    // create path and map variables
    String path = "/settlement".replaceAll("\\{format\\}", "json");

    // query params
    List<Pair> queryParams = new ArrayList<Pair>();
    // header params
    Map<String, String> headerParams = new HashMap<String, String>();
    // form params
    Map<String, String> formParams = new HashMap<String, String>();

    queryParams.addAll(ApiInvoker.parameterToPairs("", "symbol", symbol));
    queryParams.addAll(ApiInvoker.parameterToPairs("", "filter", filter));
    queryParams.addAll(ApiInvoker.parameterToPairs("", "columns", columns));
    queryParams.addAll(ApiInvoker.parameterToPairs("", "count", count));
    queryParams.addAll(ApiInvoker.parameterToPairs("", "start", start));
    queryParams.addAll(ApiInvoker.parameterToPairs("", "reverse", reverse));
    queryParams.addAll(ApiInvoker.parameterToPairs("", "startTime", startTime));
    queryParams.addAll(ApiInvoker.parameterToPairs("", "endTime", endTime));

    String[] contentTypes = {"application/json", "application/x-www-form-urlencoded"};
    String contentType = contentTypes.length > 0 ? contentTypes[0] : "application/json";

    if (contentType.startsWith("multipart/form-data")) {
      // file uploading
      MultipartEntityBuilder localVarBuilder = MultipartEntityBuilder.create();

      HttpEntity httpEntity = localVarBuilder.build();
      postBody = httpEntity;
    } else {
      // normal form params
    }

    String[] authNames = new String[] {};

    try {
      String localVarResponse =
          apiInvoker.invokeAPI(
              basePath,
              path,
              "GET",
              queryParams,
              postBody,
              headerParams,
              formParams,
              contentType,
              authNames);
      if (localVarResponse != null) {
        return (List<Settlement>)
            ApiInvoker.deserialize(localVarResponse, "array", Settlement.class);
      } else {
        return null;
      }
    } catch (ApiException ex) {
      throw ex;
    } catch (InterruptedException ex) {
      throw ex;
    } catch (ExecutionException ex) {
      if (ex.getCause() instanceof VolleyError) {
        VolleyError volleyError = (VolleyError) ex.getCause();
        if (volleyError.networkResponse != null) {
          throw new ApiException(volleyError.networkResponse.statusCode, volleyError.getMessage());
        }
      }
      throw ex;
    } catch (TimeoutException ex) {
      throw ex;
    }
  }
示例#22
0
 @Override
 public void onErrorResponse(VolleyError error) {
   dismissLoadingDialog();
   VolleyErrorUtils.showError(error);
   error.printStackTrace();
 }
 @Override
 public void onErrorResponse(VolleyError error) {
   // TODO Auto-generated method stub
   pd.dismiss();
   Toast.makeText(AboutJiaYuActivity.this, error.getMessage(), Toast.LENGTH_SHORT).show();
 }
示例#24
0
 @Override
 public void deliverError(VolleyError error) {
   Log.e("error", error.toString());
   super.deliverError(error);
 }
 @Override
 public void onErrorResponse(VolleyError error) {
   // TODO Auto-generated method stub
   AppLog.Log(Const.TAG, error.getMessage());
 }
 @Override
 public void onErrorResponse(VolleyError error) {
   Log.i(this.listeningType, "Something wrong while listening Volley");
   error.printStackTrace();
 }
示例#27
0
 @Override
 public void onErrorResponse(VolleyError error) {
   LogUtil.e(error.getMessage());
 }
示例#28
0
 @Override
 protected void dataError(VolleyError error) {
   LogTool.e(error.toString());
 }
示例#29
0
 @Override
 public void onErrorResponse(VolleyError error) {
   LeoLog.d(TAG, "Feedback error, e" + error.getMessage());
   LeoLog.d("kkl", "上传用户反馈失败!!!");
 }
 @Override
 public void onErrorResponse(VolleyError volleyError) {
   showLongToast(context, volleyError.toString());
 }