RequestParams.java
/*
* Decompiled with CFR 0_132.
*
* Could not load the following classes:
* android.text.TextUtils
*/
package org.xutils.http;
import android.text.TextUtils;
import java.io.File;
import java.io.IOException;
import java.lang.annotation.Annotation;
import java.net.Proxy;
import java.util.List;
import java.util.concurrent.Executor;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.SSLSocketFactory;
import org.xutils.common.task.Priority;
import org.xutils.common.util.KeyValue;
import org.xutils.common.util.LogUtil;
import org.xutils.http.BaseParams;
import org.xutils.http.HttpMethod;
import org.xutils.http.RequestParamsHelper;
import org.xutils.http.annotation.HttpRequest;
import org.xutils.http.app.DefaultParamsBuilder;
import org.xutils.http.app.HttpRetryHandler;
import org.xutils.http.app.ParamsBuilder;
import org.xutils.http.app.RedirectHandler;
import org.xutils.http.app.RequestTracker;
import org.xutils.http.body.RequestBody;
public class RequestParams
extends BaseParams {
private HttpRequest httpRequest;
private String uri;
private final String[] signs;
private final String[] cacheKeys;
private ParamsBuilder builder;
private String buildUri;
private String buildCacheKey;
private SSLSocketFactory sslSocketFactory;
private Proxy proxy;
private HostnameVerifier hostnameVerifier;
private boolean useCookie = true;
private String cacheDirName;
private long cacheSize;
private long cacheMaxAge;
private Executor executor;
private Priority priority = Priority.DEFAULT;
private int connectTimeout = 15000;
private int readTimeout = 15000;
private boolean autoResume = true;
private boolean autoRename = false;
private int maxRetryCount = 2;
private String saveFilePath;
private boolean cancelFast = false;
private int loadingUpdateMaxTimeSpan = 300;
private HttpRetryHandler httpRetryHandler;
private RedirectHandler redirectHandler;
private RequestTracker requestTracker;
private boolean invokedGetHttpRequest = false;
public RequestParams() {
this(null, null, null, null);
}
public RequestParams(String uri) {
this(uri, null, null, null);
}
public RequestParams(String uri, ParamsBuilder builder, String[] signs, String[] cacheKeys) {
if (uri != null && builder == null) {
builder = new DefaultParamsBuilder();
}
this.uri = uri;
this.signs = signs;
this.cacheKeys = cacheKeys;
this.builder = builder;
}
void init() throws Throwable {
if (!TextUtils.isEmpty((CharSequence)this.buildUri)) {
return;
}
if (TextUtils.isEmpty((CharSequence)this.uri) && this.getHttpRequest() == null) {
throw new IllegalStateException("uri is empty && @HttpRequest == null");
}
this.initEntityParams();
this.buildUri = this.uri;
HttpRequest httpRequest = this.getHttpRequest();
if (httpRequest != null) {
this.builder = httpRequest.builder().newInstance();
this.buildUri = this.builder.buildUri(this, httpRequest);
this.builder.buildParams(this);
this.builder.buildSign(this, httpRequest.signs());
if (this.sslSocketFactory == null) {
this.sslSocketFactory = this.builder.getSSLSocketFactory();
}
} else if (this.builder != null) {
this.builder.buildParams(this);
this.builder.buildSign(this, this.signs);
if (this.sslSocketFactory == null) {
this.sslSocketFactory = this.builder.getSSLSocketFactory();
}
}
}
public String getUri() {
return TextUtils.isEmpty((CharSequence)this.buildUri) ? this.uri : this.buildUri;
}
public void setUri(String uri) {
if (TextUtils.isEmpty((CharSequence)this.buildUri)) {
this.uri = uri;
} else {
this.buildUri = uri;
}
}
public String getCacheKey() {
if (TextUtils.isEmpty((CharSequence)this.buildCacheKey) && this.builder != null) {
HttpRequest httpRequest = this.getHttpRequest();
this.buildCacheKey = httpRequest != null ? this.builder.buildCacheKey(this, httpRequest.cacheKeys()) : this.builder.buildCacheKey(this, this.cacheKeys);
}
return this.buildCacheKey;
}
public void setSslSocketFactory(SSLSocketFactory sslSocketFactory) {
this.sslSocketFactory = sslSocketFactory;
}
public SSLSocketFactory getSslSocketFactory() {
return this.sslSocketFactory;
}
public HostnameVerifier getHostnameVerifier() {
return this.hostnameVerifier;
}
public void setHostnameVerifier(HostnameVerifier hostnameVerifier) {
this.hostnameVerifier = hostnameVerifier;
}
public boolean isUseCookie() {
return this.useCookie;
}
public void setUseCookie(boolean useCookie) {
this.useCookie = useCookie;
}
public Proxy getProxy() {
return this.proxy;
}
public void setProxy(Proxy proxy) {
this.proxy = proxy;
}
public Priority getPriority() {
return this.priority;
}
public void setPriority(Priority priority) {
this.priority = priority;
}
public int getConnectTimeout() {
return this.connectTimeout;
}
public void setConnectTimeout(int connectTimeout) {
if (connectTimeout > 0) {
this.connectTimeout = connectTimeout;
}
}
public int getReadTimeout() {
return this.readTimeout;
}
public void setReadTimeout(int readTimeout) {
if (readTimeout > 0) {
this.readTimeout = readTimeout;
}
}
public String getCacheDirName() {
return this.cacheDirName;
}
public void setCacheDirName(String cacheDirName) {
this.cacheDirName = cacheDirName;
}
public long getCacheSize() {
return this.cacheSize;
}
public void setCacheSize(long cacheSize) {
this.cacheSize = cacheSize;
}
public long getCacheMaxAge() {
return this.cacheMaxAge;
}
public void setCacheMaxAge(long cacheMaxAge) {
this.cacheMaxAge = cacheMaxAge;
}
public Executor getExecutor() {
return this.executor;
}
public void setExecutor(Executor executor) {
this.executor = executor;
}
public boolean isAutoResume() {
return this.autoResume;
}
public void setAutoResume(boolean autoResume) {
this.autoResume = autoResume;
}
public boolean isAutoRename() {
return this.autoRename;
}
public void setAutoRename(boolean autoRename) {
this.autoRename = autoRename;
}
public String getSaveFilePath() {
return this.saveFilePath;
}
public void setSaveFilePath(String saveFilePath) {
this.saveFilePath = saveFilePath;
}
public int getMaxRetryCount() {
return this.maxRetryCount;
}
public void setMaxRetryCount(int maxRetryCount) {
this.maxRetryCount = maxRetryCount;
}
public boolean isCancelFast() {
return this.cancelFast;
}
public void setCancelFast(boolean cancelFast) {
this.cancelFast = cancelFast;
}
public int getLoadingUpdateMaxTimeSpan() {
return this.loadingUpdateMaxTimeSpan;
}
public void setLoadingUpdateMaxTimeSpan(int loadingUpdateMaxTimeSpan) {
this.loadingUpdateMaxTimeSpan = loadingUpdateMaxTimeSpan;
}
public HttpRetryHandler getHttpRetryHandler() {
return this.httpRetryHandler;
}
public void setHttpRetryHandler(HttpRetryHandler httpRetryHandler) {
this.httpRetryHandler = httpRetryHandler;
}
public RedirectHandler getRedirectHandler() {
return this.redirectHandler;
}
public void setRedirectHandler(RedirectHandler redirectHandler) {
this.redirectHandler = redirectHandler;
}
public RequestTracker getRequestTracker() {
return this.requestTracker;
}
public void setRequestTracker(RequestTracker requestTracker) {
this.requestTracker = requestTracker;
}
private void initEntityParams() {
RequestParamsHelper.parseKV(this, this.getClass(), new RequestParamsHelper.ParseKVListener(){
@Override
public void onParseKV(String name, Object value) {
RequestParams.this.addParameter(name, value);
}
});
}
private HttpRequest getHttpRequest() {
if (this.httpRequest == null && !this.invokedGetHttpRequest) {
this.invokedGetHttpRequest = true;
Class<?> thisCls = this.getClass();
if (thisCls != RequestParams.class) {
this.httpRequest = thisCls.getAnnotation(HttpRequest.class);
}
}
return this.httpRequest;
}
@Override
public String toString() {
try {
this.init();
}
catch (Throwable ex) {
LogUtil.e(ex.getMessage(), ex);
}
String url = this.getUri();
return TextUtils.isEmpty((CharSequence)url) ? super.toString() : url + (url.contains("?") ? "&" : "?") + super.toString();
}
}