You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ro...@apache.org on 2008/02/01 20:27:41 UTC
svn commit: r617616 - in /httpcomponents/httpclient/trunk: ./
module-client/src/main/java/org/apache/http/impl/client/
module-client/src/main/java/org/apache/http/impl/conn/
Author: rolandw
Date: Fri Feb 1 11:27:30 2008
New Revision: 617616
URL: http://svn.apache.org/viewvc?rev=617616&view=rev
Log:
HTTPCLIENT-736: SchemeRegistry instead of ConnectionManager
Modified:
httpcomponents/httpclient/trunk/RELEASE_NOTES.txt
httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java
httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/DefaultHttpRoutePlanner.java
httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/ProxySelectorRoutePlanner.java
Modified: httpcomponents/httpclient/trunk/RELEASE_NOTES.txt
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/RELEASE_NOTES.txt?rev=617616&r1=617615&r2=617616&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/RELEASE_NOTES.txt (original)
+++ httpcomponents/httpclient/trunk/RELEASE_NOTES.txt Fri Feb 1 11:27:30 2008
@@ -1,6 +1,9 @@
Changes since 4.0 Alpha 2
-------------------
+* [HTTPCLIENT-736] route planners use SchemeRegistry instead of ConnManager
+ Contributed by Roland Weber <rolandw at apache.org>
+
* [HTTPCLIENT-730] Fixed rewriting of URIs containing escaped characters
Contributed by Sam Berlin <sberlin at gmail.com> and
Oleg Kalnichevski <olegk at apache.org>
Modified: httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java?rev=617616&r1=617615&r2=617616&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java (original)
+++ httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/client/DefaultHttpClient.java Fri Feb 1 11:27:30 2008
@@ -301,7 +301,8 @@
// non-javadoc, see base class AbstractHttpClient
@Override
protected HttpRoutePlanner createHttpRoutePlanner() {
- return new DefaultHttpRoutePlanner(getConnectionManager());
+ return new DefaultHttpRoutePlanner
+ (getConnectionManager().getSchemeRegistry());
}
} // class DefaultHttpClient
Modified: httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/DefaultHttpRoutePlanner.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/DefaultHttpRoutePlanner.java?rev=617616&r1=617615&r2=617616&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/DefaultHttpRoutePlanner.java (original)
+++ httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/DefaultHttpRoutePlanner.java Fri Feb 1 11:27:30 2008
@@ -40,9 +40,9 @@
import org.apache.http.protocol.HttpContext;
import org.apache.http.conn.Scheme;
+import org.apache.http.conn.SchemeRegistry;
import org.apache.http.conn.routing.HttpRoute;
import org.apache.http.conn.routing.HttpRoutePlanner;
-import org.apache.http.conn.ClientConnectionManager;
import org.apache.http.conn.params.ConnRoutePNames;
@@ -55,18 +55,21 @@
*/
public class DefaultHttpRoutePlanner implements HttpRoutePlanner {
- /** The connection manager, to get at the scheme registry. */
- protected ClientConnectionManager connectionManager;
-
-
- public DefaultHttpRoutePlanner(ClientConnectionManager aConnManager) {
- setConnectionManager(aConnManager);
- }
+ /** The scheme registry. */
+ protected SchemeRegistry schemeRegistry;
-
- public void setConnectionManager(ClientConnectionManager aConnManager) {
- this.connectionManager = aConnManager;
+ /**
+ * Creates a new default route planner.
+ *
+ * @param schreg the scheme registry
+ */
+ public DefaultHttpRoutePlanner(SchemeRegistry schreg) {
+ if (schreg == null) {
+ throw new IllegalArgumentException
+ ("SchemeRegistry must not be null.");
+ }
+ schemeRegistry = schreg;
}
@@ -100,8 +103,7 @@
final HttpHost proxy = (HttpHost)
request.getParams().getParameter(ConnRoutePNames.DEFAULT_PROXY);
- final Scheme schm = this.connectionManager.getSchemeRegistry().
- getScheme(target.getSchemeName());
+ final Scheme schm = schemeRegistry.getScheme(target.getSchemeName());
// as it is typically used for TLS/SSL, we assume that
// a layered scheme implies a secure connection
final boolean secure = schm.isLayered();
Modified: httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/ProxySelectorRoutePlanner.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/ProxySelectorRoutePlanner.java?rev=617616&r1=617615&r2=617616&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/ProxySelectorRoutePlanner.java (original)
+++ httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/conn/ProxySelectorRoutePlanner.java Fri Feb 1 11:27:30 2008
@@ -48,7 +48,7 @@
import org.apache.http.conn.routing.HttpRoute;
import org.apache.http.conn.routing.HttpRoutePlanner;
import org.apache.http.conn.Scheme;
-import org.apache.http.conn.ClientConnectionManager;
+import org.apache.http.conn.SchemeRegistry;
import org.apache.http.conn.params.ConnRoutePNames;
@@ -63,20 +63,29 @@
*/
public class ProxySelectorRoutePlanner implements HttpRoutePlanner {
- /** The connection manager, to get at the scheme registry. */
- protected ClientConnectionManager connectionManager;
+ /** The scheme registry. */
+ protected SchemeRegistry schemeRegistry;
/** The proxy selector to use, or <code>null</code> for system default. */
protected ProxySelector proxySelector;
-
- public ProxySelectorRoutePlanner(ClientConnectionManager aConnManager) {
- setConnectionManager(aConnManager);
- }
+ /**
+ * Creates a new proxy selector route planner.
+ *
+ * @param schreg the scheme registry
+ * @param prosel the proxy selector, or
+ * <code>null</code> for the system default
+ */
+ public ProxySelectorRoutePlanner(SchemeRegistry schreg,
+ ProxySelector prosel) {
- public void setConnectionManager(ClientConnectionManager aConnManager) {
- this.connectionManager = aConnManager;
+ if (schreg == null) {
+ throw new IllegalArgumentException
+ ("SchemeRegistry must not be null.");
+ }
+ schemeRegistry = schreg;
+ proxySelector = prosel;
}
@@ -93,11 +102,11 @@
/**
* Sets the proxy selector to use.
*
- * @param psel the proxy selector, or
+ * @param prosel the proxy selector, or
* <code>null</code> to use the system default
*/
- public void setProxySelector(ProxySelector psel) {
- this.proxySelector = psel;
+ public void setProxySelector(ProxySelector prosel) {
+ this.proxySelector = prosel;
}
@@ -131,8 +140,8 @@
request.getParams().getParameter(ConnRoutePNames.LOCAL_ADDRESS);
final HttpHost proxy = determineProxy(target, request, context);
- final Scheme schm = this.connectionManager.getSchemeRegistry().
- getScheme(target.getSchemeName());
+ final Scheme schm =
+ this.schemeRegistry.getScheme(target.getSchemeName());
// as it is typically used for TLS/SSL, we assume that
// a layered scheme implies a secure connection
final boolean secure = schm.isLayered();