mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-10 02:08:38 +09:00
pt 1 in reviving the android build (copied from pm 28a1, wish me luck)
This commit is contained in:
parent
efa9662725
commit
d7788a6d6d
4249 changed files with 468189 additions and 0 deletions
64
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnConnectionPNames.java
vendored
Normal file
64
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnConnectionPNames.java
vendored
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
/**
|
||||
* Parameter names for HTTP client connections.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.1) use custom {@link
|
||||
* ch.boye.httpclientandroidlib.impl.conn.DefaultHttpResponseParser} implementation.
|
||||
*/
|
||||
@Deprecated
|
||||
public interface ConnConnectionPNames {
|
||||
|
||||
/**
|
||||
* Defines the maximum number of ignorable lines before we expect
|
||||
* a HTTP response's status line.
|
||||
* <p>
|
||||
* With HTTP/1.1 persistent connections, the problem arises that
|
||||
* broken scripts could return a wrong Content-Length
|
||||
* (there are more bytes sent than specified).
|
||||
* Unfortunately, in some cases, this cannot be detected after the
|
||||
* bad response, but only before the next one.
|
||||
* So HttpClient must be able to skip those surplus lines this way.
|
||||
* </p>
|
||||
* <p>
|
||||
* This parameter expects a value of type {@link Integer}.
|
||||
* 0 disallows all garbage/empty lines before the status line.
|
||||
* Use {@link java.lang.Integer#MAX_VALUE} for unlimited number.
|
||||
* </p>
|
||||
*
|
||||
* @deprecated (4.1) Use custom {@link
|
||||
* ch.boye.httpclientandroidlib.impl.conn.DefaultHttpResponseParser} implementation
|
||||
*/
|
||||
@Deprecated
|
||||
public static final String MAX_STATUS_LINE_GARBAGE = "http.connection.max-status-line-garbage";
|
||||
|
||||
|
||||
}
|
||||
59
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnConnectionParamBean.java
vendored
Normal file
59
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnConnectionParamBean.java
vendored
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
import ch.boye.httpclientandroidlib.params.HttpAbstractParamBean;
|
||||
import ch.boye.httpclientandroidlib.params.HttpParams;
|
||||
|
||||
/**
|
||||
* This is a Java Bean class that can be used to wrap an instance of
|
||||
* {@link HttpParams} and manipulate HTTP client connection parameters
|
||||
* using Java Beans conventions.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.1) use custom {@link
|
||||
* ch.boye.httpclientandroidlib.impl.conn.DefaultHttpResponseParser} implementation.
|
||||
*/
|
||||
@Deprecated
|
||||
public class ConnConnectionParamBean extends HttpAbstractParamBean {
|
||||
|
||||
public ConnConnectionParamBean (final HttpParams params) {
|
||||
super(params);
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated (4.2) Use custom {@link
|
||||
* ch.boye.httpclientandroidlib.impl.conn.DefaultHttpResponseParser} implementation
|
||||
*/
|
||||
@Deprecated
|
||||
public void setMaxStatusLineGarbage (final int maxStatusLineGarbage) {
|
||||
params.setIntParameter(ConnConnectionPNames.MAX_STATUS_LINE_GARBAGE, maxStatusLineGarbage);
|
||||
}
|
||||
|
||||
}
|
||||
67
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnManagerPNames.java
vendored
Normal file
67
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnManagerPNames.java
vendored
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
/**
|
||||
* Parameter names for connection managers in HttpConn.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.1) use configuration methods of the specific connection manager implementation.
|
||||
*/
|
||||
@Deprecated
|
||||
public interface ConnManagerPNames {
|
||||
|
||||
/**
|
||||
* Defines the timeout in milliseconds used when retrieving an instance of
|
||||
* {@link ch.boye.httpclientandroidlib.conn.ManagedClientConnection} from the
|
||||
* {@link ch.boye.httpclientandroidlib.conn.ClientConnectionManager}.
|
||||
* <p>
|
||||
* This parameter expects a value of type {@link Long}.
|
||||
*/
|
||||
public static final String TIMEOUT = "http.conn-manager.timeout";
|
||||
|
||||
/**
|
||||
* Defines the maximum number of connections per route.
|
||||
* This limit is interpreted by client connection managers
|
||||
* and applies to individual manager instances.
|
||||
* <p>
|
||||
* This parameter expects a value of type {@link ConnPerRoute}.
|
||||
* <p>
|
||||
*/
|
||||
public static final String MAX_CONNECTIONS_PER_ROUTE = "http.conn-manager.max-per-route";
|
||||
|
||||
/**
|
||||
* Defines the maximum number of connections in total.
|
||||
* This limit is interpreted by client connection managers
|
||||
* and applies to individual manager instances.
|
||||
* <p>
|
||||
* This parameter expects a value of type {@link Integer}.
|
||||
*/
|
||||
public static final String MAX_TOTAL_CONNECTIONS = "http.conn-manager.max-total";
|
||||
|
||||
}
|
||||
63
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnManagerParamBean.java
vendored
Normal file
63
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnManagerParamBean.java
vendored
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
import ch.boye.httpclientandroidlib.annotation.NotThreadSafe;
|
||||
import ch.boye.httpclientandroidlib.params.HttpAbstractParamBean;
|
||||
import ch.boye.httpclientandroidlib.params.HttpParams;
|
||||
|
||||
/**
|
||||
* This is a Java Bean class that can be used to wrap an instance of
|
||||
* {@link HttpParams} and manipulate connection manager parameters
|
||||
* using Java Beans conventions.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.1) use configuration methods of the specific connection manager implementation.
|
||||
*/
|
||||
@NotThreadSafe
|
||||
@Deprecated
|
||||
public class ConnManagerParamBean extends HttpAbstractParamBean {
|
||||
|
||||
public ConnManagerParamBean (final HttpParams params) {
|
||||
super(params);
|
||||
}
|
||||
|
||||
public void setTimeout (final long timeout) {
|
||||
params.setLongParameter(ConnManagerPNames.TIMEOUT, timeout);
|
||||
}
|
||||
|
||||
public void setMaxTotalConnections (final int maxConnections) {
|
||||
params.setIntParameter(ConnManagerPNames.MAX_TOTAL_CONNECTIONS, maxConnections);
|
||||
}
|
||||
|
||||
public void setConnectionsPerRoute(final ConnPerRouteBean connPerRoute) {
|
||||
params.setParameter(ConnManagerPNames.MAX_CONNECTIONS_PER_ROUTE, connPerRoute);
|
||||
}
|
||||
|
||||
}
|
||||
147
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnManagerParams.java
vendored
Normal file
147
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnManagerParams.java
vendored
Normal file
|
|
@ -0,0 +1,147 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
import ch.boye.httpclientandroidlib.annotation.Immutable;
|
||||
import ch.boye.httpclientandroidlib.conn.routing.HttpRoute;
|
||||
import ch.boye.httpclientandroidlib.params.HttpParams;
|
||||
import ch.boye.httpclientandroidlib.util.Args;
|
||||
|
||||
/**
|
||||
* An adaptor for manipulating HTTP connection management
|
||||
* parameters in {@link HttpParams}.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @see ConnManagerPNames
|
||||
*
|
||||
* @deprecated (4.1) use configuration methods of the specific connection manager implementation.
|
||||
*/
|
||||
@Deprecated
|
||||
@Immutable
|
||||
public final class ConnManagerParams implements ConnManagerPNames {
|
||||
|
||||
/** The default maximum number of connections allowed overall */
|
||||
public static final int DEFAULT_MAX_TOTAL_CONNECTIONS = 20;
|
||||
|
||||
/**
|
||||
* Returns the timeout in milliseconds used when retrieving a
|
||||
* {@link ch.boye.httpclientandroidlib.conn.ManagedClientConnection} from the
|
||||
* {@link ch.boye.httpclientandroidlib.conn.ClientConnectionManager}.
|
||||
*
|
||||
* @return timeout in milliseconds.
|
||||
*
|
||||
* @deprecated (4.1) use {@link
|
||||
* ch.boye.httpclientandroidlib.params.HttpConnectionParams#getConnectionTimeout(HttpParams)}
|
||||
*/
|
||||
@Deprecated
|
||||
public static long getTimeout(final HttpParams params) {
|
||||
Args.notNull(params, "HTTP parameters");
|
||||
return params.getLongParameter(TIMEOUT, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the timeout in milliseconds used when retrieving a
|
||||
* {@link ch.boye.httpclientandroidlib.conn.ManagedClientConnection} from the
|
||||
* {@link ch.boye.httpclientandroidlib.conn.ClientConnectionManager}.
|
||||
*
|
||||
* @param timeout the timeout in milliseconds
|
||||
*
|
||||
* @deprecated (4.1) use {@link
|
||||
* ch.boye.httpclientandroidlib.params.HttpConnectionParams#setConnectionTimeout(HttpParams, int)}
|
||||
*/
|
||||
@Deprecated
|
||||
public static void setTimeout(final HttpParams params, final long timeout) {
|
||||
Args.notNull(params, "HTTP parameters");
|
||||
params.setLongParameter(TIMEOUT, timeout);
|
||||
}
|
||||
|
||||
/** The default maximum number of connections allowed per host */
|
||||
private static final ConnPerRoute DEFAULT_CONN_PER_ROUTE = new ConnPerRoute() {
|
||||
|
||||
public int getMaxForRoute(final HttpRoute route) {
|
||||
return ConnPerRouteBean.DEFAULT_MAX_CONNECTIONS_PER_ROUTE;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
/**
|
||||
* Sets lookup interface for maximum number of connections allowed per route.
|
||||
*
|
||||
* @param params HTTP parameters
|
||||
* @param connPerRoute lookup interface for maximum number of connections allowed
|
||||
* per route
|
||||
*/
|
||||
public static void setMaxConnectionsPerRoute(final HttpParams params,
|
||||
final ConnPerRoute connPerRoute) {
|
||||
Args.notNull(params, "HTTP parameters");
|
||||
params.setParameter(MAX_CONNECTIONS_PER_ROUTE, connPerRoute);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns lookup interface for maximum number of connections allowed per route.
|
||||
*
|
||||
* @param params HTTP parameters
|
||||
*
|
||||
* @return lookup interface for maximum number of connections allowed per route.
|
||||
*/
|
||||
public static ConnPerRoute getMaxConnectionsPerRoute(final HttpParams params) {
|
||||
Args.notNull(params, "HTTP parameters");
|
||||
ConnPerRoute connPerRoute = (ConnPerRoute) params.getParameter(MAX_CONNECTIONS_PER_ROUTE);
|
||||
if (connPerRoute == null) {
|
||||
connPerRoute = DEFAULT_CONN_PER_ROUTE;
|
||||
}
|
||||
return connPerRoute;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the maximum number of connections allowed.
|
||||
*
|
||||
* @param params HTTP parameters
|
||||
* @param maxTotalConnections The maximum number of connections allowed.
|
||||
*/
|
||||
public static void setMaxTotalConnections(
|
||||
final HttpParams params,
|
||||
final int maxTotalConnections) {
|
||||
Args.notNull(params, "HTTP parameters");
|
||||
params.setIntParameter(MAX_TOTAL_CONNECTIONS, maxTotalConnections);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the maximum number of connections allowed.
|
||||
*
|
||||
* @param params HTTP parameters
|
||||
*
|
||||
* @return The maximum number of connections allowed.
|
||||
*/
|
||||
public static int getMaxTotalConnections(
|
||||
final HttpParams params) {
|
||||
Args.notNull(params, "HTTP parameters");
|
||||
return params.getIntParameter(MAX_TOTAL_CONNECTIONS, DEFAULT_MAX_TOTAL_CONNECTIONS);
|
||||
}
|
||||
|
||||
}
|
||||
46
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnPerRoute.java
vendored
Normal file
46
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnPerRoute.java
vendored
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
import ch.boye.httpclientandroidlib.conn.routing.HttpRoute;
|
||||
|
||||
/**
|
||||
* This interface is intended for looking up maximum number of connections
|
||||
* allowed for a given route. This class can be used by pooling
|
||||
* {@link ch.boye.httpclientandroidlib.conn.ClientConnectionManager connection managers} for
|
||||
* a fine-grained control of connections on a per route basis.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.3) no longer used.
|
||||
*/
|
||||
@Deprecated
|
||||
public interface ConnPerRoute {
|
||||
|
||||
int getMaxForRoute(HttpRoute route);
|
||||
|
||||
}
|
||||
112
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnPerRouteBean.java
vendored
Normal file
112
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnPerRouteBean.java
vendored
Normal file
|
|
@ -0,0 +1,112 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
import ch.boye.httpclientandroidlib.annotation.ThreadSafe;
|
||||
import ch.boye.httpclientandroidlib.conn.routing.HttpRoute;
|
||||
import ch.boye.httpclientandroidlib.util.Args;
|
||||
|
||||
/**
|
||||
* This class maintains a map of HTTP routes to maximum number of connections allowed
|
||||
* for those routes. This class can be used by pooling
|
||||
* {@link ch.boye.httpclientandroidlib.conn.ClientConnectionManager connection managers} for
|
||||
* a fine-grained control of connections on a per route basis.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.2) use {@link ch.boye.httpclientandroidlib.pool.ConnPoolControl}
|
||||
*/
|
||||
@Deprecated
|
||||
@ThreadSafe
|
||||
public final class ConnPerRouteBean implements ConnPerRoute {
|
||||
|
||||
/** The default maximum number of connections allowed per host */
|
||||
public static final int DEFAULT_MAX_CONNECTIONS_PER_ROUTE = 2; // Per RFC 2616 sec 8.1.4
|
||||
|
||||
private final ConcurrentHashMap<HttpRoute, Integer> maxPerHostMap;
|
||||
|
||||
private volatile int defaultMax;
|
||||
|
||||
public ConnPerRouteBean(final int defaultMax) {
|
||||
super();
|
||||
this.maxPerHostMap = new ConcurrentHashMap<HttpRoute, Integer>();
|
||||
setDefaultMaxPerRoute(defaultMax);
|
||||
}
|
||||
|
||||
public ConnPerRouteBean() {
|
||||
this(DEFAULT_MAX_CONNECTIONS_PER_ROUTE);
|
||||
}
|
||||
|
||||
public int getDefaultMax() {
|
||||
return this.defaultMax;
|
||||
}
|
||||
|
||||
/**
|
||||
* @since 4.1
|
||||
*/
|
||||
public int getDefaultMaxPerRoute() {
|
||||
return this.defaultMax;
|
||||
}
|
||||
|
||||
public void setDefaultMaxPerRoute(final int max) {
|
||||
Args.positive(max, "Defautl max per route");
|
||||
this.defaultMax = max;
|
||||
}
|
||||
|
||||
public void setMaxForRoute(final HttpRoute route, final int max) {
|
||||
Args.notNull(route, "HTTP route");
|
||||
Args.positive(max, "Max per route");
|
||||
this.maxPerHostMap.put(route, Integer.valueOf(max));
|
||||
}
|
||||
|
||||
public int getMaxForRoute(final HttpRoute route) {
|
||||
Args.notNull(route, "HTTP route");
|
||||
final Integer max = this.maxPerHostMap.get(route);
|
||||
if (max != null) {
|
||||
return max.intValue();
|
||||
} else {
|
||||
return this.defaultMax;
|
||||
}
|
||||
}
|
||||
|
||||
public void setMaxForRoutes(final Map<HttpRoute, Integer> map) {
|
||||
if (map == null) {
|
||||
return;
|
||||
}
|
||||
this.maxPerHostMap.clear();
|
||||
this.maxPerHostMap.putAll(map);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return this.maxPerHostMap.toString();
|
||||
}
|
||||
|
||||
}
|
||||
79
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnRoutePNames.java
vendored
Normal file
79
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnRoutePNames.java
vendored
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
/**
|
||||
* Parameter names for connection routing.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.3) use {@link ch.boye.httpclientandroidlib.client.config.RequestConfig}.
|
||||
*/
|
||||
@Deprecated
|
||||
public interface ConnRoutePNames {
|
||||
|
||||
/**
|
||||
* Parameter for the default proxy.
|
||||
* The default value will be used by some
|
||||
* {@link ch.boye.httpclientandroidlib.conn.routing.HttpRoutePlanner HttpRoutePlanner}
|
||||
* implementations, in particular the default implementation.
|
||||
* <p>
|
||||
* This parameter expects a value of type {@link ch.boye.httpclientandroidlib.HttpHost}.
|
||||
* </p>
|
||||
*/
|
||||
public static final String DEFAULT_PROXY = "http.route.default-proxy";
|
||||
|
||||
/**
|
||||
* Parameter for the local address.
|
||||
* On machines with multiple network interfaces, this parameter
|
||||
* can be used to select the network interface from which the
|
||||
* connection originates.
|
||||
* It will be interpreted by the standard
|
||||
* {@link ch.boye.httpclientandroidlib.conn.routing.HttpRoutePlanner HttpRoutePlanner}
|
||||
* implementations, in particular the default implementation.
|
||||
* <p>
|
||||
* This parameter expects a value of type {@link java.net.InetAddress}.
|
||||
* </p>
|
||||
*/
|
||||
public static final String LOCAL_ADDRESS = "http.route.local-address";
|
||||
|
||||
/**
|
||||
* Parameter for an forced route.
|
||||
* The forced route will be interpreted by the standard
|
||||
* {@link ch.boye.httpclientandroidlib.conn.routing.HttpRoutePlanner HttpRoutePlanner}
|
||||
* implementations.
|
||||
* Instead of computing a route, the given forced route will be
|
||||
* returned, even if it points to the wrong target host.
|
||||
* <p>
|
||||
* This parameter expects a value of type
|
||||
* {@link ch.boye.httpclientandroidlib.conn.routing.HttpRoute HttpRoute}.
|
||||
* </p>
|
||||
*/
|
||||
public static final String FORCED_ROUTE = "http.route.forced-route";
|
||||
|
||||
}
|
||||
|
||||
70
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnRouteParamBean.java
vendored
Normal file
70
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnRouteParamBean.java
vendored
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
import java.net.InetAddress;
|
||||
|
||||
import ch.boye.httpclientandroidlib.HttpHost;
|
||||
import ch.boye.httpclientandroidlib.annotation.NotThreadSafe;
|
||||
import ch.boye.httpclientandroidlib.conn.routing.HttpRoute;
|
||||
import ch.boye.httpclientandroidlib.params.HttpAbstractParamBean;
|
||||
import ch.boye.httpclientandroidlib.params.HttpParams;
|
||||
|
||||
/**
|
||||
* This is a Java Bean class that can be used to wrap an instance of
|
||||
* {@link HttpParams} and manipulate connection routing parameters
|
||||
* using Java Beans conventions.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.3) use {@link ch.boye.httpclientandroidlib.client.config.RequestConfig}.
|
||||
*/
|
||||
@Deprecated
|
||||
@NotThreadSafe
|
||||
public class ConnRouteParamBean extends HttpAbstractParamBean {
|
||||
|
||||
public ConnRouteParamBean (final HttpParams params) {
|
||||
super(params);
|
||||
}
|
||||
|
||||
/** @see ConnRoutePNames#DEFAULT_PROXY */
|
||||
public void setDefaultProxy (final HttpHost defaultProxy) {
|
||||
params.setParameter(ConnRoutePNames.DEFAULT_PROXY, defaultProxy);
|
||||
}
|
||||
|
||||
/** @see ConnRoutePNames#LOCAL_ADDRESS */
|
||||
public void setLocalAddress (final InetAddress address) {
|
||||
params.setParameter(ConnRoutePNames.LOCAL_ADDRESS, address);
|
||||
}
|
||||
|
||||
/** @see ConnRoutePNames#FORCED_ROUTE */
|
||||
public void setForcedRoute (final HttpRoute route) {
|
||||
params.setParameter(ConnRoutePNames.FORCED_ROUTE, route);
|
||||
}
|
||||
|
||||
}
|
||||
178
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnRouteParams.java
vendored
Normal file
178
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/ConnRouteParams.java
vendored
Normal file
|
|
@ -0,0 +1,178 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
|
||||
import java.net.InetAddress;
|
||||
|
||||
import ch.boye.httpclientandroidlib.HttpHost;
|
||||
import ch.boye.httpclientandroidlib.annotation.Immutable;
|
||||
import ch.boye.httpclientandroidlib.conn.routing.HttpRoute;
|
||||
import ch.boye.httpclientandroidlib.params.HttpParams;
|
||||
import ch.boye.httpclientandroidlib.util.Args;
|
||||
|
||||
/**
|
||||
* An adaptor for manipulating HTTP routing parameters
|
||||
* in {@link HttpParams}.
|
||||
*
|
||||
* @since 4.0
|
||||
*
|
||||
* @deprecated (4.3) use {@link ch.boye.httpclientandroidlib.client.config.RequestConfig}.
|
||||
*/
|
||||
@Deprecated
|
||||
@Immutable
|
||||
public class ConnRouteParams implements ConnRoutePNames {
|
||||
|
||||
/**
|
||||
* A special value indicating "no host".
|
||||
* This relies on a nonsense scheme name to avoid conflicts
|
||||
* with actual hosts. Note that this is a <i>valid</i> host.
|
||||
*/
|
||||
public static final HttpHost NO_HOST =
|
||||
new HttpHost("127.0.0.255", 0, "no-host"); // Immutable
|
||||
|
||||
/**
|
||||
* A special value indicating "no route".
|
||||
* This is a route with {@link #NO_HOST} as the target.
|
||||
*/
|
||||
public static final HttpRoute NO_ROUTE = new HttpRoute(NO_HOST); // Immutable
|
||||
|
||||
/** Disabled default constructor. */
|
||||
private ConnRouteParams() {
|
||||
// no body
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtains the {@link ConnRoutePNames#DEFAULT_PROXY DEFAULT_PROXY}
|
||||
* parameter value.
|
||||
* {@link #NO_HOST} will be mapped to <code>null</code>,
|
||||
* to allow unsetting in a hierarchy.
|
||||
*
|
||||
* @param params the parameters in which to look up
|
||||
*
|
||||
* @return the default proxy set in the argument parameters, or
|
||||
* <code>null</code> if not set
|
||||
*/
|
||||
public static HttpHost getDefaultProxy(final HttpParams params) {
|
||||
Args.notNull(params, "Parameters");
|
||||
HttpHost proxy = (HttpHost)
|
||||
params.getParameter(DEFAULT_PROXY);
|
||||
if ((proxy != null) && NO_HOST.equals(proxy)) {
|
||||
// value is explicitly unset
|
||||
proxy = null;
|
||||
}
|
||||
return proxy;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the {@link ConnRoutePNames#DEFAULT_PROXY DEFAULT_PROXY}
|
||||
* parameter value.
|
||||
*
|
||||
* @param params the parameters in which to set the value
|
||||
* @param proxy the value to set, may be <code>null</code>.
|
||||
* Note that {@link #NO_HOST} will be mapped to
|
||||
* <code>null</code> by {@link #getDefaultProxy},
|
||||
* to allow for explicit unsetting in hierarchies.
|
||||
*/
|
||||
public static void setDefaultProxy(final HttpParams params,
|
||||
final HttpHost proxy) {
|
||||
Args.notNull(params, "Parameters");
|
||||
params.setParameter(DEFAULT_PROXY, proxy);
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtains the {@link ConnRoutePNames#FORCED_ROUTE FORCED_ROUTE}
|
||||
* parameter value.
|
||||
* {@link #NO_ROUTE} will be mapped to <code>null</code>,
|
||||
* to allow unsetting in a hierarchy.
|
||||
*
|
||||
* @param params the parameters in which to look up
|
||||
*
|
||||
* @return the forced route set in the argument parameters, or
|
||||
* <code>null</code> if not set
|
||||
*/
|
||||
public static HttpRoute getForcedRoute(final HttpParams params) {
|
||||
Args.notNull(params, "Parameters");
|
||||
HttpRoute route = (HttpRoute)
|
||||
params.getParameter(FORCED_ROUTE);
|
||||
if ((route != null) && NO_ROUTE.equals(route)) {
|
||||
// value is explicitly unset
|
||||
route = null;
|
||||
}
|
||||
return route;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the {@link ConnRoutePNames#FORCED_ROUTE FORCED_ROUTE}
|
||||
* parameter value.
|
||||
*
|
||||
* @param params the parameters in which to set the value
|
||||
* @param route the value to set, may be <code>null</code>.
|
||||
* Note that {@link #NO_ROUTE} will be mapped to
|
||||
* <code>null</code> by {@link #getForcedRoute},
|
||||
* to allow for explicit unsetting in hierarchies.
|
||||
*/
|
||||
public static void setForcedRoute(final HttpParams params,
|
||||
final HttpRoute route) {
|
||||
Args.notNull(params, "Parameters");
|
||||
params.setParameter(FORCED_ROUTE, route);
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtains the {@link ConnRoutePNames#LOCAL_ADDRESS LOCAL_ADDRESS}
|
||||
* parameter value.
|
||||
* There is no special value that would automatically be mapped to
|
||||
* <code>null</code>. You can use the wildcard address (0.0.0.0 for IPv4,
|
||||
* :: for IPv6) to override a specific local address in a hierarchy.
|
||||
*
|
||||
* @param params the parameters in which to look up
|
||||
*
|
||||
* @return the local address set in the argument parameters, or
|
||||
* <code>null</code> if not set
|
||||
*/
|
||||
public static InetAddress getLocalAddress(final HttpParams params) {
|
||||
Args.notNull(params, "Parameters");
|
||||
final InetAddress local = (InetAddress)
|
||||
params.getParameter(LOCAL_ADDRESS);
|
||||
// no explicit unsetting
|
||||
return local;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the {@link ConnRoutePNames#LOCAL_ADDRESS LOCAL_ADDRESS}
|
||||
* parameter value.
|
||||
*
|
||||
* @param params the parameters in which to set the value
|
||||
* @param local the value to set, may be <code>null</code>
|
||||
*/
|
||||
public static void setLocalAddress(final HttpParams params,
|
||||
final InetAddress local) {
|
||||
Args.notNull(params, "Parameters");
|
||||
params.setParameter(LOCAL_ADDRESS, local);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
32
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/package-info.java
vendored
Normal file
32
mobile/android/thirdparty/ch/boye/httpclientandroidlib/conn/params/package-info.java
vendored
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Deprecated.
|
||||
* @deprecated (4.3).
|
||||
*/
|
||||
package ch.boye.httpclientandroidlib.conn.params;
|
||||
Loading…
Add table
Add a link
Reference in a new issue