Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package com.qiniu.android.http;
  
  
  import java.util.Locale;

定义HTTP请求的日志信息和常规方法
  
  public final class ResponseInfo {
     public static final int InvalidToken = -5;
     public static final int InvalidArgument = -4;
     public static final int InvalidFile = -3;
     public static final int Cancelled = -2;
     public static final int NetworkError = -1;
 
     // <-- error code copy from ios
     public static final int TimedOut = -1001;
     public static final int UnknownHost = -1003;
     public static final int CannotConnectToHost = -1004;
     public static final int NetworkConnectionLost = -1005;
 
     // -->
     
回复状态码
 
     public final int statusCode;
    
七牛日志扩展头
 
     public final String reqId;
    
七牛日志扩展头
 
     public final String xlog;
    
cdn日志扩展头
 
     public final String xvia;
    
错误信息
 
     public final String error;
    
请求消耗时间,单位秒
 
     public final double duration;
    
服务器域名
 
     public final String host;
    
服务器IP
 
     public final String ip;

    
服务器端口
 
     public final int port;

    
访问路径
 
     public final String path;

    
user agent id
 
     public final String id;

    
log 时间戳
 
     public final long timeStamp;

    
已发送字节数
 
     public final long sent;
 
     public ResponseInfo(int statusCodeString reqIdString xlogString xviaString hostString pathString ipint portdouble durationlong sentString error) {
         this. = statusCode;
         this. = reqId;
         this. = xlog;
         this. = xvia;
         this. = host;
         this. = path;
         this. = duration;
         this. = error;
         this. = ip;
         this. = port;
         this. = UserAgent.instance().;
         this. = System.currentTimeMillis() / 1000;
         this. = sent;
     }
 
     public static ResponseInfo cancelled() {
         return new ResponseInfo("""""""""""", -1, 0, 0, "cancelled by user");
     }
    public static ResponseInfo invalidArgument(String message) {
        return new ResponseInfo("""""""""""", -1, 0, 0,
                message);
    }
    public static ResponseInfo invalidToken(String message) {
        return new ResponseInfo("""""""""""", -1, 0, 0,
                message);
    }
    public static ResponseInfo fileError(Exception e) {
        return new ResponseInfo("""""""""""", -1,
                0, 0, e.getMessage());
    }
    public boolean isCancelled() {
        return  == ;
    }
    public boolean isOK() {
        return  == 200 &&  == null &&  != null;
    }
    public boolean isNetworkBroken() {
        return  ==  ||  == 
                ||  ==  ||  == 
                ||  == ;
    }
    public boolean isServerError() {
        return ( >= 500 &&  < 600 &&  != 579)
                ||  == 996;
    }
    public boolean needSwitchServer() {
        return isNetworkBroken() || isServerError();
    }
    public boolean needRetry() {
        return !isCancelled() && (needSwitchServer() ||  == 406
                || ( == 200 &&  != null));
    }
    public boolean isNotQiniu() {
        return  < 500 &&  >= 200 &&  == null;
    }
    public String toString() {
        return String.format(."{ResponseInfo:%s,status:%d, reqId:%s, xlog:%s, xvia:%s, host:%s, path:%s, ip:%s, port:%d, duration:%f s, time:%d, sent:%d,error:%s}",
                );
    }
New to GrepCode? Check out our FAQ X