You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2011/09/03 15:55:28 UTC
svn commit: r1164865 - in /httpcomponents/httpcore/trunk/httpcore-nio/src:
main/java/org/apache/http/impl/nio/ main/java/org/apache/http/impl/nio/pool/
main/java/org/apache/http/impl/nio/ssl/
test/java/org/apache/http/impl/nio/reactor/ test/java/org/ap...
Author: olegk
Date: Sat Sep 3 13:55:27 2011
New Revision: 1164865
URL: http://svn.apache.org/viewvc?rev=1164865&view=rev
Log:
Deprecated old I/O dispatch implementation in favor of new ones based on AbstractIODispatch
Added:
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIODispatch.java
- copied, changed from r1164465, httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIODispatch.java
- copied, changed from r1164465, httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java
Modified:
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpClientConnectionFactory.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpServerConnectionFactory.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpClientConnectionFactory.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpServerConnectionFactory.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnFactory.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLClientIOEventDispatch.java
httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLServerIOEventDispatch.java
httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/impl/nio/reactor/TestDefaultListeningIOReactor.java
httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/protocol/TestTruncatedChunks.java
httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpClientNio.java
httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLClient.java
httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLServer.java
httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpServerNio.java
Copied: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIODispatch.java (from r1164465, httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java)
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIODispatch.java?p2=httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIODispatch.java&p1=httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java&r1=1164465&r2=1164865&rev=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIODispatch.java Sat Sep 3 13:55:27 2011
@@ -29,142 +29,96 @@ package org.apache.http.impl.nio;
import java.io.IOException;
-import org.apache.http.HttpResponse;
-import org.apache.http.HttpResponseFactory;
+import javax.net.ssl.SSLContext;
+
import org.apache.http.annotation.Immutable;
-import org.apache.http.impl.DefaultHttpResponseFactory;
-import org.apache.http.nio.NHttpClientIOTarget;
import org.apache.http.nio.NHttpClientHandler;
+import org.apache.http.nio.NHttpClientIOTarget;
+import org.apache.http.nio.NHttpConnectionFactory;
import org.apache.http.nio.reactor.IOEventDispatch;
import org.apache.http.nio.reactor.IOSession;
-import org.apache.http.nio.util.ByteBufferAllocator;
-import org.apache.http.nio.util.HeapByteBufferAllocator;
-import org.apache.http.params.HttpConnectionParams;
+import org.apache.http.nio.reactor.ssl.SSLSetupHandler;
import org.apache.http.params.HttpParams;
/**
- * Default implementation of {@link IOEventDispatch} interface for plain
- * (unencrypted) client-side HTTP connections.
- * <p>
- * The following parameters can be used to customize the behavior of this
- * class:
- * <ul>
- * <li>{@link org.apache.http.params.CoreProtocolPNames#HTTP_ELEMENT_CHARSET}</li>
- * <li>{@link org.apache.http.params.CoreConnectionPNames#SO_TIMEOUT}</li>
- * <li>{@link org.apache.http.params.CoreConnectionPNames#SOCKET_BUFFER_SIZE}</li>
- * <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_HEADER_COUNT}</li>
- * <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_LINE_LENGTH}</li>
- * </ul>
+ * Default {@link IOEventDispatch} implementation that supports both plain (non-encrypted)
+ * and SSL encrypted HTTP connections.
*
- * @since 4.0
+ * @since 4.2
*/
@Immutable // provided injected dependencies are immutable
-public class DefaultClientIOEventDispatch extends AbstractIODispatch<NHttpClientIOTarget> {
+public class DefaultClientIODispatch extends AbstractIODispatch<NHttpClientIOTarget> {
- protected final NHttpClientHandler handler;
- protected final ByteBufferAllocator allocator;
- protected final HttpParams params;
+ private final NHttpClientHandler handler;
+ private final NHttpConnectionFactory<NHttpClientIOTarget> connFactory;
/**
* Creates a new instance of this class to be used for dispatching I/O event
* notifications to the given protocol handler.
*
* @param handler the client protocol handler.
- * @param params HTTP parameters.
+ * @param connFactory HTTP client connection factory.
*/
- public DefaultClientIOEventDispatch(
+ public DefaultClientIODispatch(
final NHttpClientHandler handler,
- final HttpParams params) {
+ final NHttpConnectionFactory<NHttpClientIOTarget> connFactory) {
super();
if (handler == null) {
throw new IllegalArgumentException("HTTP client handler may not be null");
}
- if (params == null) {
- throw new IllegalArgumentException("HTTP parameters may not be null");
+ if (connFactory == null) {
+ throw new IllegalArgumentException("HTTP client connection factory may not null");
}
- this.allocator = createByteBufferAllocator();
this.handler = handler;
- this.params = params;
+ this.connFactory = connFactory;
}
- /**
- * Creates an instance of {@link HeapByteBufferAllocator} to be used
- * by HTTP connections for allocating {@link java.nio.ByteBuffer} objects.
- * <p>
- * This method can be overridden in a super class in order to provide
- * a different implementation of the {@link ByteBufferAllocator} interface.
- *
- * @return byte buffer allocator.
- */
- protected ByteBufferAllocator createByteBufferAllocator() {
- return new HeapByteBufferAllocator();
+ public DefaultClientIODispatch(final NHttpClientHandler handler, final HttpParams params) {
+ this(handler, new DefaultNHttpClientConnectionFactory(params));
}
- /**
- * Creates an instance of {@link DefaultHttpResponseFactory} to be used
- * by HTTP connections for creating {@link HttpResponse} objects.
- * <p>
- * This method can be overridden in a super class in order to provide
- * a different implementation of the {@link HttpResponseFactory} interface.
- *
- * @return HTTP response factory.
- */
- protected HttpResponseFactory createHttpResponseFactory() {
- return new DefaultHttpResponseFactory();
+ public DefaultClientIODispatch(
+ final NHttpClientHandler handler,
+ final SSLContext sslcontext,
+ final SSLSetupHandler sslHandler,
+ final HttpParams params) {
+ this(handler, new SSLNHttpClientConnectionFactory(sslcontext, sslHandler, params));
}
- /**
- * Creates an instance of {@link DefaultNHttpClientConnection} based on the
- * given {@link IOSession}.
- * <p>
- * This method can be overridden in a super class in order to provide
- * a different implementation of the {@link NHttpClientIOTarget} interface.
- *
- * @param session the underlying I/O session.
- *
- * @return newly created HTTP connection.
- */
@Override
- protected NHttpClientIOTarget createConnection(final IOSession session) {
- return new DefaultNHttpClientConnection(
- session,
- createHttpResponseFactory(),
- this.allocator,
- this.params);
+ protected NHttpClientIOTarget createConnection(final IOSession session) {
+ return this.connFactory.createConnection(session);
}
@Override
- protected void onConnected(final NHttpClientIOTarget conn) {
- int timeout = HttpConnectionParams.getSoTimeout(this.params);
- conn.setSocketTimeout(timeout);
-
+ protected void onConnected(final NHttpClientIOTarget conn) {
Object attachment = conn.getContext().getAttribute(IOSession.ATTACHMENT_KEY);
this.handler.connected(conn, attachment);
- }
+ }
@Override
- protected void onClosed(final NHttpClientIOTarget conn) {
+ protected void onClosed(final NHttpClientIOTarget conn) {
this.handler.closed(conn);
- }
+ }
- @Override
- protected void onException(final NHttpClientIOTarget conn, IOException ex) {
+ @Override
+ protected void onException(final NHttpClientIOTarget conn, IOException ex) {
this.handler.exception(conn, ex);
- }
+ }
- @Override
- protected void onInputReady(final NHttpClientIOTarget conn) {
+ @Override
+ protected void onInputReady(final NHttpClientIOTarget conn) {
conn.consumeInput(this.handler);
- }
+ }
- @Override
- protected void onOutputReady(final NHttpClientIOTarget conn) {
+ @Override
+ protected void onOutputReady(final NHttpClientIOTarget conn) {
conn.produceOutput(this.handler);
- }
+ }
- @Override
- protected void onTimeout(final NHttpClientIOTarget conn) {
+ @Override
+ protected void onTimeout(final NHttpClientIOTarget conn) {
this.handler.timeout(conn);
- }
+ }
}
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultClientIOEventDispatch.java Sat Sep 3 13:55:27 2011
@@ -57,7 +57,10 @@ import org.apache.http.params.HttpParams
* </ul>
*
* @since 4.0
+ *
+ * @deprecated use {@link DefaultClientIODispatch}
*/
+@Deprecated
@Immutable // provided injected dependencies are immutable
public class DefaultClientIOEventDispatch extends AbstractIODispatch<NHttpClientIOTarget> {
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpClientConnectionFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpClientConnectionFactory.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpClientConnectionFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpClientConnectionFactory.java Sat Sep 3 13:55:27 2011
@@ -30,10 +30,12 @@ import org.apache.http.HttpResponseFacto
import org.apache.http.annotation.Immutable;
import org.apache.http.impl.DefaultHttpResponseFactory;
import org.apache.http.nio.NHttpClientConnection;
+import org.apache.http.nio.NHttpClientIOTarget;
import org.apache.http.nio.NHttpConnectionFactory;
import org.apache.http.nio.reactor.IOSession;
import org.apache.http.nio.util.ByteBufferAllocator;
import org.apache.http.nio.util.HeapByteBufferAllocator;
+import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
/**
@@ -43,6 +45,7 @@ import org.apache.http.params.HttpParams
* class:
* <ul>
* <li>{@link org.apache.http.params.CoreProtocolPNames#HTTP_ELEMENT_CHARSET}</li>
+ * <li>{@link org.apache.http.params.CoreConnectionPNames#SO_TIMEOUT}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#SOCKET_BUFFER_SIZE}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_HEADER_COUNT}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_LINE_LENGTH}</li>
@@ -51,7 +54,7 @@ import org.apache.http.params.HttpParams
* @since 4.2
*/
@Immutable
-public class DefaultNHttpClientConnectionFactory implements NHttpConnectionFactory<NHttpClientConnection> {
+public class DefaultNHttpClientConnectionFactory implements NHttpConnectionFactory<NHttpClientIOTarget> {
private final HttpResponseFactory responseFactory;
private final ByteBufferAllocator allocator;
@@ -80,7 +83,7 @@ public class DefaultNHttpClientConnectio
this(new DefaultHttpResponseFactory(), new HeapByteBufferAllocator(), params);
}
- protected NHttpClientConnection createConnection(
+ protected NHttpClientIOTarget createConnection(
final IOSession session,
final HttpResponseFactory responseFactory,
final ByteBufferAllocator allocator,
@@ -88,8 +91,11 @@ public class DefaultNHttpClientConnectio
return new DefaultNHttpClientConnection(session, responseFactory, allocator, params);
}
- public NHttpClientConnection createConnection(final IOSession session) {
- return createConnection(session, this.responseFactory, this.allocator, this.params);
+ public NHttpClientIOTarget createConnection(final IOSession session) {
+ NHttpClientIOTarget conn = createConnection(session, this.responseFactory, this.allocator, this.params);
+ int timeout = HttpConnectionParams.getSoTimeout(this.params);
+ conn.setSocketTimeout(timeout);
+ return conn;
}
}
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpServerConnectionFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpServerConnectionFactory.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpServerConnectionFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultNHttpServerConnectionFactory.java Sat Sep 3 13:55:27 2011
@@ -31,9 +31,11 @@ import org.apache.http.annotation.Immuta
import org.apache.http.impl.DefaultHttpRequestFactory;
import org.apache.http.nio.NHttpConnectionFactory;
import org.apache.http.nio.NHttpServerConnection;
+import org.apache.http.nio.NHttpServerIOTarget;
import org.apache.http.nio.reactor.IOSession;
import org.apache.http.nio.util.ByteBufferAllocator;
import org.apache.http.nio.util.HeapByteBufferAllocator;
+import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
/**
@@ -43,6 +45,7 @@ import org.apache.http.params.HttpParams
* class:
* <ul>
* <li>{@link org.apache.http.params.CoreProtocolPNames#HTTP_ELEMENT_CHARSET}</li>
+ * <li>{@link org.apache.http.params.CoreConnectionPNames#SO_TIMEOUT}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#SOCKET_BUFFER_SIZE}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_HEADER_COUNT}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_LINE_LENGTH}</li>
@@ -51,7 +54,7 @@ import org.apache.http.params.HttpParams
* @since 4.2
*/
@Immutable
-public class DefaultNHttpServerConnectionFactory implements NHttpConnectionFactory<NHttpServerConnection> {
+public class DefaultNHttpServerConnectionFactory implements NHttpConnectionFactory<NHttpServerIOTarget> {
private final HttpRequestFactory requestFactory;
private final ByteBufferAllocator allocator;
@@ -80,7 +83,7 @@ public class DefaultNHttpServerConnectio
this(new DefaultHttpRequestFactory(), new HeapByteBufferAllocator(), params);
}
- protected NHttpServerConnection createConnection(
+ protected NHttpServerIOTarget createConnection(
final IOSession session,
final HttpRequestFactory requestFactory,
final ByteBufferAllocator allocator,
@@ -88,8 +91,12 @@ public class DefaultNHttpServerConnectio
return new DefaultNHttpServerConnection(session, requestFactory, allocator, params);
}
- public NHttpServerConnection createConnection(final IOSession session) {
- return createConnection(session, this.requestFactory, this.allocator, this.params);
+ public NHttpServerIOTarget createConnection(final IOSession session) {
+ NHttpServerIOTarget conn = createConnection(
+ session, this.requestFactory, this.allocator, this.params);
+ int timeout = HttpConnectionParams.getSoTimeout(this.params);
+ conn.setSocketTimeout(timeout);
+ return conn;
}
}
Copied: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIODispatch.java (from r1164465, httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java)
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIODispatch.java?p2=httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIODispatch.java&p1=httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java&r1=1164465&r2=1164865&rev=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIODispatch.java Sat Sep 3 13:55:27 2011
@@ -29,114 +29,62 @@ package org.apache.http.impl.nio;
import java.io.IOException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpRequestFactory;
+import javax.net.ssl.SSLContext;
+
import org.apache.http.annotation.Immutable;
-import org.apache.http.impl.DefaultHttpRequestFactory;
+import org.apache.http.nio.NHttpConnectionFactory;
import org.apache.http.nio.NHttpServerIOTarget;
import org.apache.http.nio.NHttpServiceHandler;
import org.apache.http.nio.reactor.IOEventDispatch;
import org.apache.http.nio.reactor.IOSession;
-import org.apache.http.nio.util.ByteBufferAllocator;
-import org.apache.http.nio.util.HeapByteBufferAllocator;
-import org.apache.http.params.HttpConnectionParams;
+import org.apache.http.nio.reactor.ssl.SSLSetupHandler;
import org.apache.http.params.HttpParams;
/**
* Default implementation of {@link IOEventDispatch} interface for plain
- * (unencrypted) server-side HTTP connections.
- * <p>
- * The following parameters can be used to customize the behavior of this
- * class:
- * <ul>
- * <li>{@link org.apache.http.params.CoreProtocolPNames#HTTP_ELEMENT_CHARSET}</li>
- * <li>{@link org.apache.http.params.CoreConnectionPNames#SO_TIMEOUT}</li>
- * <li>{@link org.apache.http.params.CoreConnectionPNames#SOCKET_BUFFER_SIZE}</li>
- * <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_HEADER_COUNT}</li>
- * <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_LINE_LENGTH}</li>
- * </ul>
+ * (non-encrypted) server-side HTTP connections.
*
- * @since 4.0
+ * @since 4.2
*/
@Immutable // provided injected dependencies are immutable
-public class DefaultServerIOEventDispatch extends AbstractIODispatch<NHttpServerIOTarget> {
+public class DefaultServerIODispatch extends AbstractIODispatch<NHttpServerIOTarget> {
+
+ private final NHttpServiceHandler handler;
+ private final NHttpConnectionFactory<NHttpServerIOTarget> connFactory;
- protected final ByteBufferAllocator allocator;
- protected final NHttpServiceHandler handler;
- protected final HttpParams params;
-
- /**
- * Creates a new instance of this class to be used for dispatching I/O event
- * notifications to the given protocol handler.
- *
- * @param handler the server protocol handler.
- * @param params HTTP parameters.
- */
- public DefaultServerIOEventDispatch(
+ public DefaultServerIODispatch(
final NHttpServiceHandler handler,
- final HttpParams params) {
+ final NHttpConnectionFactory<NHttpServerIOTarget> connFactory) {
super();
if (handler == null) {
- throw new IllegalArgumentException("HTTP service handler may not be null");
+ throw new IllegalArgumentException("HTTP client handler may not be null");
}
- if (params == null) {
- throw new IllegalArgumentException("HTTP parameters may not be null");
+ if (connFactory == null) {
+ throw new IllegalArgumentException("HTTP server connection factory is null");
}
- this.allocator = createByteBufferAllocator();
this.handler = handler;
- this.params = params;
+ this.connFactory = connFactory;
}
- /**
- * Creates an instance of {@link HeapByteBufferAllocator} to be used
- * by HTTP connections for allocating {@link java.nio.ByteBuffer} objects.
- * <p>
- * This method can be overridden in a super class in order to provide
- * a different implementation of the {@link ByteBufferAllocator} interface.
- *
- * @return byte buffer allocator.
- */
- protected ByteBufferAllocator createByteBufferAllocator() {
- return new HeapByteBufferAllocator();
+ public DefaultServerIODispatch(final NHttpServiceHandler handler, final HttpParams params) {
+ this(handler, new DefaultNHttpServerConnectionFactory(params));
}
- /**
- * Creates an instance of {@link DefaultHttpRequestFactory} to be used
- * by HTTP connections for creating {@link HttpRequest} objects.
- * <p>
- * This method can be overridden in a super class in order to provide
- * a different implementation of the {@link HttpRequestFactory} interface.
- *
- * @return HTTP request factory.
- */
- protected HttpRequestFactory createHttpRequestFactory() {
- return new DefaultHttpRequestFactory();
+ public DefaultServerIODispatch(
+ final NHttpServiceHandler handler,
+ final SSLContext sslcontext,
+ final SSLSetupHandler sslHandler,
+ final HttpParams params) {
+ this(handler, new SSLNHttpServerConnectionFactory(sslcontext, sslHandler, params));
}
- /**
- * Creates an instance of {@link DefaultNHttpServerConnection} based on the
- * given {@link IOSession}.
- * <p>
- * This method can be overridden in a super class in order to provide
- * a different implementation of the {@link NHttpServerIOTarget} interface.
- *
- * @param session the underlying I/O session.
- *
- * @return newly created HTTP connection.
- */
@Override
- protected NHttpServerIOTarget createConnection(final IOSession session) {
- return new DefaultNHttpServerConnection(
- session,
- createHttpRequestFactory(),
- this.allocator,
- this.params);
+ protected NHttpServerIOTarget createConnection(final IOSession session) {
+ return this.connFactory.createConnection(session);
}
@Override
protected void onConnected(final NHttpServerIOTarget conn) {
- int timeout = HttpConnectionParams.getSoTimeout(this.params);
- conn.setSocketTimeout(timeout);
this.handler.connected(conn);
}
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/DefaultServerIOEventDispatch.java Sat Sep 3 13:55:27 2011
@@ -57,7 +57,10 @@ import org.apache.http.params.HttpParams
* </ul>
*
* @since 4.0
+ *
+ * @deprecated use {@link DefaultServerIODispatch}
*/
+@Deprecated
@Immutable // provided injected dependencies are immutable
public class DefaultServerIOEventDispatch extends AbstractIODispatch<NHttpServerIOTarget> {
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpClientConnectionFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpClientConnectionFactory.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpClientConnectionFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpClientConnectionFactory.java Sat Sep 3 13:55:27 2011
@@ -32,6 +32,7 @@ import org.apache.http.HttpResponseFacto
import org.apache.http.annotation.Immutable;
import org.apache.http.impl.DefaultHttpResponseFactory;
import org.apache.http.nio.NHttpClientConnection;
+import org.apache.http.nio.NHttpClientIOTarget;
import org.apache.http.nio.NHttpConnectionFactory;
import org.apache.http.nio.reactor.IOSession;
import org.apache.http.nio.reactor.ssl.SSLIOSession;
@@ -39,6 +40,7 @@ import org.apache.http.nio.reactor.ssl.S
import org.apache.http.nio.reactor.ssl.SSLSetupHandler;
import org.apache.http.nio.util.ByteBufferAllocator;
import org.apache.http.nio.util.HeapByteBufferAllocator;
+import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
/**
@@ -48,6 +50,7 @@ import org.apache.http.params.HttpParams
* class:
* <ul>
* <li>{@link org.apache.http.params.CoreProtocolPNames#HTTP_ELEMENT_CHARSET}</li>
+ * <li>{@link org.apache.http.params.CoreConnectionPNames#SO_TIMEOUT}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#SOCKET_BUFFER_SIZE}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_HEADER_COUNT}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_LINE_LENGTH}</li>
@@ -56,7 +59,7 @@ import org.apache.http.params.HttpParams
* @since 4.2
*/
@Immutable
-public class SSLNHttpClientConnectionFactory implements NHttpConnectionFactory<NHttpClientConnection> {
+public class SSLNHttpClientConnectionFactory implements NHttpConnectionFactory<NHttpClientIOTarget> {
private final HttpResponseFactory responseFactory;
private final ByteBufferAllocator allocator;
@@ -109,7 +112,7 @@ public class SSLNHttpClientConnectionFac
return sslcontext;
}
- protected NHttpClientConnection createConnection(
+ protected NHttpClientIOTarget createConnection(
final IOSession session,
final HttpResponseFactory responseFactory,
final ByteBufferAllocator allocator,
@@ -117,11 +120,15 @@ public class SSLNHttpClientConnectionFac
return new DefaultNHttpClientConnection(session, responseFactory, allocator, params);
}
- public NHttpClientConnection createConnection(final IOSession session) {
+ public NHttpClientIOTarget createConnection(final IOSession session) {
SSLContext sslcontext = this.sslcontext != null ? this.sslcontext : getDefaultSSLContext();
SSLIOSession ssliosession = new SSLIOSession(session, SSLMode.CLIENT, sslcontext, this.sslHandler);
session.setAttribute(SSLIOSession.SESSION_KEY, ssliosession);
- return createConnection(ssliosession, this.responseFactory, this.allocator, this.params);
+ NHttpClientIOTarget conn = createConnection(
+ ssliosession, this.responseFactory, this.allocator, this.params);
+ int timeout = HttpConnectionParams.getSoTimeout(this.params);
+ conn.setSocketTimeout(timeout);
+ return conn;
}
}
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpServerConnectionFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpServerConnectionFactory.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpServerConnectionFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/SSLNHttpServerConnectionFactory.java Sat Sep 3 13:55:27 2011
@@ -33,12 +33,14 @@ import org.apache.http.annotation.Immuta
import org.apache.http.impl.DefaultHttpRequestFactory;
import org.apache.http.nio.NHttpConnectionFactory;
import org.apache.http.nio.NHttpServerConnection;
+import org.apache.http.nio.NHttpServerIOTarget;
import org.apache.http.nio.reactor.IOSession;
import org.apache.http.nio.reactor.ssl.SSLIOSession;
import org.apache.http.nio.reactor.ssl.SSLMode;
import org.apache.http.nio.reactor.ssl.SSLSetupHandler;
import org.apache.http.nio.util.ByteBufferAllocator;
import org.apache.http.nio.util.HeapByteBufferAllocator;
+import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
/**
@@ -48,6 +50,7 @@ import org.apache.http.params.HttpParams
* class:
* <ul>
* <li>{@link org.apache.http.params.CoreProtocolPNames#HTTP_ELEMENT_CHARSET}</li>
+ * <li>{@link org.apache.http.params.CoreConnectionPNames#SO_TIMEOUT}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#SOCKET_BUFFER_SIZE}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_HEADER_COUNT}</li>
* <li>{@link org.apache.http.params.CoreConnectionPNames#MAX_LINE_LENGTH}</li>
@@ -56,7 +59,7 @@ import org.apache.http.params.HttpParams
* @since 4.2
*/
@Immutable
-public class SSLNHttpServerConnectionFactory implements NHttpConnectionFactory<NHttpServerConnection> {
+public class SSLNHttpServerConnectionFactory implements NHttpConnectionFactory<NHttpServerIOTarget> {
private final HttpRequestFactory requestFactory;
private final ByteBufferAllocator allocator;
@@ -109,7 +112,7 @@ public class SSLNHttpServerConnectionFac
return sslcontext;
}
- protected NHttpServerConnection createConnection(
+ protected NHttpServerIOTarget createConnection(
final IOSession session,
final HttpRequestFactory requestFactory,
final ByteBufferAllocator allocator,
@@ -117,11 +120,15 @@ public class SSLNHttpServerConnectionFac
return new DefaultNHttpServerConnection(session, requestFactory, allocator, params);
}
- public NHttpServerConnection createConnection(final IOSession session) {
+ public NHttpServerIOTarget createConnection(final IOSession session) {
SSLContext sslcontext = this.sslcontext != null ? this.sslcontext : getDefaultSSLContext();
- SSLIOSession ssliosession = new SSLIOSession(session, SSLMode.CLIENT, sslcontext, this.sslHandler);
+ SSLIOSession ssliosession = new SSLIOSession(session, SSLMode.SERVER, sslcontext, this.sslHandler);
session.setAttribute(SSLIOSession.SESSION_KEY, ssliosession);
- return createConnection(ssliosession, this.requestFactory, this.allocator, this.params);
+ NHttpServerIOTarget conn = createConnection(
+ ssliosession, this.requestFactory, this.allocator, this.params);
+ int timeout = HttpConnectionParams.getSoTimeout(this.params);
+ conn.setSocketTimeout(timeout);
+ return conn;
}
}
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnFactory.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnFactory.java Sat Sep 3 13:55:27 2011
@@ -63,12 +63,12 @@ import org.apache.http.protocol.Executio
@Immutable
public class BasicNIOConnFactory implements NIOConnFactory<HttpHost, NHttpClientConnection> {
- private final NHttpConnectionFactory<NHttpClientConnection> plainFactory;
- private final NHttpConnectionFactory<NHttpClientConnection> sslFactory;
+ private final NHttpConnectionFactory<? extends NHttpClientConnection> plainFactory;
+ private final NHttpConnectionFactory<? extends NHttpClientConnection> sslFactory;
public BasicNIOConnFactory(
- final NHttpConnectionFactory<NHttpClientConnection> plainFactory,
- final NHttpConnectionFactory<NHttpClientConnection> sslFactory) {
+ final NHttpConnectionFactory<? extends NHttpClientConnection> plainFactory,
+ final NHttpConnectionFactory<? extends NHttpClientConnection> sslFactory) {
super();
if (plainFactory == null) {
throw new IllegalArgumentException("Plain HTTP client connection factory may not be null");
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLClientIOEventDispatch.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLClientIOEventDispatch.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLClientIOEventDispatch.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLClientIOEventDispatch.java Sat Sep 3 13:55:27 2011
@@ -31,6 +31,7 @@ import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLException;
import org.apache.http.annotation.Immutable;
+import org.apache.http.impl.nio.DefaultClientIODispatch;
import org.apache.http.impl.nio.DefaultClientIOEventDispatch;
import org.apache.http.nio.NHttpClientHandler;
import org.apache.http.nio.NHttpClientIOTarget;
@@ -57,7 +58,10 @@ import org.apache.http.params.HttpParams
* </ul>
*
* @since 4.1
+ *
+ * @deprecated use {@link DefaultClientIODispatch}
*/
+@Deprecated
@Immutable // provided injected dependencies are immutable
public class SSLClientIOEventDispatch extends DefaultClientIOEventDispatch {
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLServerIOEventDispatch.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLServerIOEventDispatch.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLServerIOEventDispatch.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/ssl/SSLServerIOEventDispatch.java Sat Sep 3 13:55:27 2011
@@ -31,6 +31,7 @@ import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLException;
import org.apache.http.annotation.Immutable;
+import org.apache.http.impl.nio.DefaultServerIODispatch;
import org.apache.http.impl.nio.DefaultServerIOEventDispatch;
import org.apache.http.nio.NHttpServerIOTarget;
import org.apache.http.nio.NHttpServiceHandler;
@@ -57,7 +58,10 @@ import org.apache.http.params.HttpParams
* </ul>
*
* @since 4.1
+ *
+ * @deprecated use {@link DefaultServerIODispatch}
*/
+@Deprecated
@Immutable // provided injected dependencies are immutable
public class SSLServerIOEventDispatch extends DefaultServerIOEventDispatch {
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/impl/nio/reactor/TestDefaultListeningIOReactor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/impl/nio/reactor/TestDefaultListeningIOReactor.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/impl/nio/reactor/TestDefaultListeningIOReactor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/impl/nio/reactor/TestDefaultListeningIOReactor.java Sat Sep 3 13:55:27 2011
@@ -37,7 +37,7 @@ import java.util.concurrent.TimeUnit;
import org.apache.http.HttpResponseInterceptor;
import org.apache.http.impl.DefaultConnectionReuseStrategy;
import org.apache.http.impl.DefaultHttpResponseFactory;
-import org.apache.http.impl.nio.DefaultServerIOEventDispatch;
+import org.apache.http.impl.nio.DefaultServerIODispatch;
import org.apache.http.nio.protocol.BufferingHttpServiceHandler;
import org.apache.http.nio.reactor.IOEventDispatch;
import org.apache.http.nio.reactor.IOReactorExceptionHandler;
@@ -78,7 +78,7 @@ public class TestDefaultListeningIOReact
new DefaultConnectionReuseStrategy(),
params);
- final IOEventDispatch eventDispatch = new DefaultServerIOEventDispatch(
+ final IOEventDispatch eventDispatch = new DefaultServerIODispatch(
serviceHandler,
params);
@@ -147,7 +147,7 @@ public class TestDefaultListeningIOReact
new DefaultConnectionReuseStrategy(),
params);
- final IOEventDispatch eventDispatch = new DefaultServerIOEventDispatch(
+ final IOEventDispatch eventDispatch = new DefaultServerIODispatch(
serviceHandler,
params);
@@ -211,7 +211,7 @@ public class TestDefaultListeningIOReact
new DefaultConnectionReuseStrategy(),
params);
- final IOEventDispatch eventDispatch = new DefaultServerIOEventDispatch(
+ final IOEventDispatch eventDispatch = new DefaultServerIODispatch(
serviceHandler,
params);
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/protocol/TestTruncatedChunks.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/protocol/TestTruncatedChunks.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/protocol/TestTruncatedChunks.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/protocol/TestTruncatedChunks.java Sat Sep 3 13:55:27 2011
@@ -38,6 +38,7 @@ import java.util.concurrent.ConcurrentLi
import org.apache.http.HttpEntity;
import org.apache.http.HttpRequest;
+import org.apache.http.HttpRequestFactory;
import org.apache.http.HttpRequestInterceptor;
import org.apache.http.HttpResponse;
import org.apache.http.HttpResponseInterceptor;
@@ -50,7 +51,8 @@ import org.apache.http.impl.DefaultConne
import org.apache.http.impl.DefaultHttpResponseFactory;
import org.apache.http.impl.io.HttpTransportMetricsImpl;
import org.apache.http.impl.nio.DefaultNHttpServerConnection;
-import org.apache.http.impl.nio.DefaultServerIOEventDispatch;
+import org.apache.http.impl.nio.DefaultNHttpServerConnectionFactory;
+import org.apache.http.impl.nio.DefaultServerIODispatch;
import org.apache.http.impl.nio.codecs.AbstractContentEncoder;
import org.apache.http.message.BasicHttpRequest;
import org.apache.http.nio.ContentDecoder;
@@ -143,22 +145,20 @@ public class TestTruncatedChunks {
}
- static class CustomServerIOEventDispatch extends DefaultServerIOEventDispatch {
+ static class CustomServerConnectionFactory extends DefaultNHttpServerConnectionFactory {
- public CustomServerIOEventDispatch(
- final NHttpServiceHandler handler,
- final HttpParams params) {
- super(handler, params);
+ public CustomServerConnectionFactory(final HttpParams params) {
+ super(params);
}
@Override
- protected NHttpServerIOTarget createConnection(final IOSession session) {
+ protected NHttpServerIOTarget createConnection(
+ final IOSession session,
+ final HttpRequestFactory requestFactory,
+ final ByteBufferAllocator allocator,
+ final HttpParams params) {
- return new DefaultNHttpServerConnection(
- session,
- createHttpRequestFactory(),
- this.allocator,
- this.params) {
+ return new DefaultNHttpServerConnection(session, requestFactory, allocator, params) {
@Override
protected ContentEncoder createContentEncoder(
@@ -187,7 +187,7 @@ public class TestTruncatedChunks {
@Override
protected IOEventDispatch createIOEventDispatch(
NHttpServiceHandler serviceHandler, HttpParams params) {
- return new CustomServerIOEventDispatch(serviceHandler, params);
+ return new DefaultServerIODispatch(serviceHandler, new CustomServerConnectionFactory(params));
}
}
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpClientNio.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpClientNio.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpClientNio.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpClientNio.java Sat Sep 3 13:55:27 2011
@@ -31,7 +31,7 @@ import java.io.IOException;
import java.net.InetSocketAddress;
import java.util.List;
-import org.apache.http.impl.nio.DefaultClientIOEventDispatch;
+import org.apache.http.impl.nio.DefaultClientIODispatch;
import org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor;
import org.apache.http.impl.nio.reactor.ExceptionEvent;
import org.apache.http.nio.NHttpClientHandler;
@@ -64,7 +64,7 @@ public class HttpClientNio {
protected IOEventDispatch createIOEventDispatch(
final NHttpClientHandler clientHandler, final HttpParams params) {
- return new DefaultClientIOEventDispatch(clientHandler, params);
+ return new DefaultClientIODispatch(clientHandler, params);
}
private void execute(final NHttpClientHandler clientHandler) throws IOException {
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLClient.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLClient.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLClient.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLClient.java Sat Sep 3 13:55:27 2011
@@ -38,9 +38,9 @@ import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManager;
import javax.net.ssl.TrustManagerFactory;
+import org.apache.http.impl.nio.DefaultClientIODispatch;
import org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor;
import org.apache.http.impl.nio.reactor.ExceptionEvent;
-import org.apache.http.impl.nio.ssl.SSLClientIOEventDispatch;
import org.apache.http.nio.NHttpClientHandler;
import org.apache.http.nio.reactor.IOEventDispatch;
import org.apache.http.nio.reactor.IOReactorExceptionHandler;
@@ -105,7 +105,7 @@ public class HttpSSLClient {
final NHttpClientHandler clientHandler,
final SSLContext sslcontext,
final HttpParams params) {
- return new SSLClientIOEventDispatch(clientHandler, sslcontext, params);
+ return new DefaultClientIODispatch(clientHandler, sslcontext, null, params);
}
private void execute(final NHttpClientHandler clientHandler) throws IOException {
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLServer.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLServer.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLServer.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpSSLServer.java Sat Sep 3 13:55:27 2011
@@ -38,16 +38,14 @@ import javax.net.ssl.KeyManager;
import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.SSLContext;
+import org.apache.http.impl.nio.DefaultServerIODispatch;
import org.apache.http.impl.nio.reactor.DefaultListeningIOReactor;
import org.apache.http.impl.nio.reactor.ExceptionEvent;
-import org.apache.http.impl.nio.ssl.SSLServerIOEventDispatch;
-import org.apache.http.nio.NHttpServerIOTarget;
import org.apache.http.nio.NHttpServiceHandler;
import org.apache.http.nio.reactor.IOEventDispatch;
import org.apache.http.nio.reactor.IOReactorExceptionHandler;
import org.apache.http.nio.reactor.IOReactorStatus;
import org.apache.http.nio.reactor.ListenerEndpoint;
-import org.apache.http.nio.reactor.ssl.SSLIOSession;
import org.apache.http.params.HttpParams;
/**
@@ -112,18 +110,7 @@ public class HttpSSLServer {
final NHttpServiceHandler serviceHandler,
final SSLContext sslcontext,
final HttpParams params) {
- return new SSLServerIOEventDispatch(serviceHandler, sslcontext, params) {
-
- @Override
- protected NHttpServerIOTarget createSSLConnection(final SSLIOSession session) {
- return new LoggingNHttpServerConnection(
- session,
- createHttpRequestFactory(),
- createByteBufferAllocator(),
- params);
- }
-
- };
+ return new DefaultServerIODispatch(serviceHandler, sslcontext, null, params);
}
private void execute(final NHttpServiceHandler serviceHandler) throws IOException {
Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpServerNio.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpServerNio.java?rev=1164865&r1=1164864&r2=1164865&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpServerNio.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/testserver/HttpServerNio.java Sat Sep 3 13:55:27 2011
@@ -31,15 +31,13 @@ import java.io.IOException;
import java.net.InetSocketAddress;
import java.util.List;
-import org.apache.http.impl.nio.DefaultServerIOEventDispatch;
+import org.apache.http.impl.nio.DefaultServerIODispatch;
import org.apache.http.impl.nio.reactor.DefaultListeningIOReactor;
import org.apache.http.impl.nio.reactor.ExceptionEvent;
-import org.apache.http.nio.NHttpServerIOTarget;
import org.apache.http.nio.NHttpServiceHandler;
import org.apache.http.nio.reactor.IOEventDispatch;
import org.apache.http.nio.reactor.IOReactorExceptionHandler;
import org.apache.http.nio.reactor.IOReactorStatus;
-import org.apache.http.nio.reactor.IOSession;
import org.apache.http.nio.reactor.ListenerEndpoint;
import org.apache.http.params.HttpParams;
@@ -71,18 +69,7 @@ public class HttpServerNio {
protected IOEventDispatch createIOEventDispatch(
final NHttpServiceHandler serviceHandler, final HttpParams params) {
- return new DefaultServerIOEventDispatch(serviceHandler, params) {
-
- @Override
- protected NHttpServerIOTarget createConnection(final IOSession session) {
- return new LoggingNHttpServerConnection(
- session,
- createHttpRequestFactory(),
- createByteBufferAllocator(),
- params);
- }
-
- };
+ return new DefaultServerIODispatch(serviceHandler, params);
}
private void execute(final NHttpServiceHandler serviceHandler) throws IOException {