NIMSDK-AOS  9.19.10
RequestCallbackWrapper.java
浏览该文件的文档.
1 package com.netease.nimlib.sdk;
2 
3 import com.netease.nimlib.log.NimLog;
4 
5 /**
6  * RequestCallback的一个包裹类,将3个结果的调用转到一个接口上,以供上层调用者精简代码,不必每次调用都需要实现3个接口。<br>
7  * 对应到原来的3个接口,参数分别为:<br>
8  * onSuccess(T result) -&gt; onResult(ResponseCode.RES_SUCCESS, result, null)<br>
9  * onFailed(int code) -&gt; onResult(code, null, null)<br>
10  * onException(Throwable exception) -&gt; onResult(ResponseCode.RES_EXCEPTION, null, exception)<br>
11  */
12 public abstract class RequestCallbackWrapper<T> implements RequestCallback<T> {
13 
14  private static final String TAG = "RequestCallbackWrapper";
15 
16  /**
17  * 调用结果回调函数
18  * @param code
19  * @param result
20  * @param exception
21  */
22  public abstract void onResult(int code, T result, Throwable exception);
23 
24  @Override
25  public void onSuccess(T result) {
26  try {
27  onResult(ResponseCode.RES_SUCCESS, result, null);
28  } catch (Throwable throwable) {
29  NimLog.e(TAG, "catch in onSuccess:" + result, throwable);
30  }
31  }
32 
33  @Override
34  public void onFailed(int code) {
35  try {
36  onResult(code, null, null);
37  } catch (Throwable throwable) {
38  NimLog.e(TAG, "catch in onFailed:" + code, throwable);
39  }
40  }
41 
42  @Override
43  public void onException(Throwable exception) {
44  try {
45  exception.printStackTrace();
46  onResult(ResponseCode.RES_EXCEPTION, null, exception);
47  } catch (Throwable throwable) {
48  NimLog.e(TAG, "catch in onException:" + exception, throwable);
49  }
50  }
51 }
云信服务器主要响应码定义
static final short RES_EXCEPTION
操作出现异常
abstract void onResult(int code, T result, Throwable exception)
调用结果回调函数
void onException(Throwable exception)
操作过程中发生异常
static final short RES_SUCCESS
操作成功
RequestCallback的一个包裹类,将3个结果的调用转到一个接口上,以供上层调用者精简代码,不必每次调用都需...