add default httpparams
This commit is contained in:
parent
102f37cc77
commit
3692c87ec6
@ -33,6 +33,7 @@ public abstract class HttpClientFactory {
|
|||||||
* 默认的HttpClient
|
* 默认的HttpClient
|
||||||
*/
|
*/
|
||||||
private static volatile HttpClientFactory defaultFactory = newDefaultFactory();
|
private static volatile HttpClientFactory defaultFactory = newDefaultFactory();
|
||||||
|
private static volatile HttpParams defaultParams;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* NettyHttpClient -> ApacheHttpClient(HttpComponent3&4) ->
|
* NettyHttpClient -> ApacheHttpClient(HttpComponent3&4) ->
|
||||||
@ -85,24 +86,49 @@ public abstract class HttpClientFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取HttpClient实例
|
* 获取默认的HttpParams
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static HttpClient getInstance() {
|
public static HttpParams getDefaultParams() {
|
||||||
return getDefaultFactory().newInstance();
|
return defaultParams;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resolve the Http Parameter
|
||||||
|
*
|
||||||
|
* @param params
|
||||||
|
* 请求参数
|
||||||
|
*/
|
||||||
|
public static void setDefaultParams(HttpParams params) {
|
||||||
|
if (params == null) {
|
||||||
|
throw new IllegalArgumentException("'params' must not be empty");
|
||||||
|
}
|
||||||
|
HttpClientFactory.defaultParams = params;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取HttpClient实例
|
* 获取HttpClient实例
|
||||||
*
|
*
|
||||||
* @param params Http参数
|
* @return
|
||||||
|
*/
|
||||||
|
public static HttpClient getInstance() {
|
||||||
|
return getInstance(HttpClientFactory.defaultParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取HttpClient实例
|
||||||
|
*
|
||||||
|
* @param params
|
||||||
|
* Http参数
|
||||||
*
|
*
|
||||||
* @return HttpClinet实例
|
* @return HttpClinet实例
|
||||||
*/
|
*/
|
||||||
public static HttpClient getInstance(HttpParams params) {
|
public static HttpClient getInstance(HttpParams params) {
|
||||||
HttpClientFactory clientFactory = getDefaultFactory();
|
HttpClientFactory clientFactory = getDefaultFactory();
|
||||||
clientFactory.setDefaultParams(params);
|
if (params != null) {
|
||||||
|
clientFactory.resolveHttpParams(params);
|
||||||
|
}
|
||||||
return clientFactory.newInstance();
|
return clientFactory.newInstance();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -112,20 +138,20 @@ public abstract class HttpClientFactory {
|
|||||||
* @param params
|
* @param params
|
||||||
* 请求参数
|
* 请求参数
|
||||||
*/
|
*/
|
||||||
public void setDefaultParams(HttpParams params) {
|
public void resolveHttpParams(HttpParams params){
|
||||||
if (params == null) {
|
if (params == null) {
|
||||||
throw new IllegalArgumentException("'params' must not be empty");
|
throw new IllegalArgumentException("'params' must not be empty");
|
||||||
}
|
}
|
||||||
resolveHttpParams(params);
|
resolveHttpParams0(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Resolve the Http Parameter
|
* Resolve the Http Parameter
|
||||||
*
|
*
|
||||||
* @param params
|
* @param params
|
||||||
* 请求参数
|
* 请求参数
|
||||||
*/
|
*/
|
||||||
protected abstract void resolveHttpParams(HttpParams params);
|
protected abstract void resolveHttpParams0(HttpParams params);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取HttpClient实例
|
* 获取HttpClient实例
|
||||||
|
|||||||
@ -18,7 +18,7 @@ public class SimpleHttpClientFactory extends HttpClientFactory {
|
|||||||
private HttpParams params;
|
private HttpParams params;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
this.params = params;
|
this.params = params;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -41,7 +41,7 @@ public class HttpComponent3Factory extends HttpClientFactory {
|
|||||||
* Resolve Parameter
|
* Resolve Parameter
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
protected void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
if (params.getProxy() != null) {
|
if (params.getProxy() != null) {
|
||||||
InetSocketAddress socketAddress = (InetSocketAddress) params
|
InetSocketAddress socketAddress = (InetSocketAddress) params
|
||||||
.getProxy().address();
|
.getProxy().address();
|
||||||
|
|||||||
@ -41,7 +41,7 @@ public class HttpComponent4Factory extends HttpClientFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
httpComponentFactory.setDefaultParams(params);
|
httpComponentFactory.resolveHttpParams(params);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -39,10 +39,7 @@ public class HttpComponent4_1Factory extends HttpClientFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
if (params == null) {
|
|
||||||
throw new IllegalArgumentException("'params' must not be empty");
|
|
||||||
}
|
|
||||||
if (params.getProxy() != null) {
|
if (params.getProxy() != null) {
|
||||||
InetSocketAddress socketAddress = (InetSocketAddress) params
|
InetSocketAddress socketAddress = (InetSocketAddress) params
|
||||||
.getProxy().address();
|
.getProxy().address();
|
||||||
|
|||||||
@ -42,7 +42,7 @@ public class HttpComponent4_2Factory extends HttpClientFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
clientBuilder.setDefaultRequestConfig(RequestConfig.custom()
|
clientBuilder.setDefaultRequestConfig(RequestConfig.custom()
|
||||||
.setConnectTimeout(params.getConnectTimeout())
|
.setConnectTimeout(params.getConnectTimeout())
|
||||||
.setConnectionRequestTimeout(params.getReadTimeout()).build());
|
.setConnectionRequestTimeout(params.getReadTimeout()).build());
|
||||||
|
|||||||
@ -46,7 +46,7 @@ public class Netty4HttpClientFactory extends HttpClientFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
this.params = params;
|
this.params = params;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -32,7 +32,7 @@ public class OkHttpClient2Factory extends HttpClientFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
okClient.setConnectTimeout(params.getConnectTimeout(),
|
okClient.setConnectTimeout(params.getConnectTimeout(),
|
||||||
TimeUnit.MILLISECONDS);
|
TimeUnit.MILLISECONDS);
|
||||||
okClient.setReadTimeout(params.getReadTimeout(), TimeUnit.MILLISECONDS);
|
okClient.setReadTimeout(params.getReadTimeout(), TimeUnit.MILLISECONDS);
|
||||||
|
|||||||
@ -39,7 +39,7 @@ public class OkHttpClient3Factory extends HttpClientFactory {
|
|||||||
*
|
*
|
||||||
* */
|
* */
|
||||||
@Override
|
@Override
|
||||||
protected void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
clientBuilder.connectTimeout(params.getConnectTimeout(),
|
clientBuilder.connectTimeout(params.getConnectTimeout(),
|
||||||
TimeUnit.MILLISECONDS);
|
TimeUnit.MILLISECONDS);
|
||||||
clientBuilder.readTimeout(params.getReadTimeout(),
|
clientBuilder.readTimeout(params.getReadTimeout(),
|
||||||
|
|||||||
@ -27,8 +27,8 @@ public class OkHttpClientFactory extends HttpClientFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void resolveHttpParams(HttpParams params) {
|
protected void resolveHttpParams0(HttpParams params) {
|
||||||
okHttpClientFactory.setDefaultParams(params);
|
okHttpClientFactory.resolveHttpParams(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user