diff options
Diffstat (limited to 'jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java')
-rw-r--r-- | jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java | 28 |
1 files changed, 9 insertions, 19 deletions
diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java index e7c36efe0f..9d0c49fb2e 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java @@ -41,6 +41,7 @@ import org.eclipse.jetty.http.HttpMethod; import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.Connection; import org.eclipse.jetty.io.EndPoint; +import org.eclipse.jetty.io.ManagedSelector; import org.eclipse.jetty.io.MappedByteBufferPool; import org.eclipse.jetty.io.SelectChannelEndPoint; import org.eclipse.jetty.io.SelectorManager; @@ -207,7 +208,7 @@ public class ConnectHandler extends HandlerWrapper * @param response the http response * @param serverAddress the remote server address in the form {@code host:port} */ - protected void handleConnect(Request baseRequest, final HttpServletRequest request, final HttpServletResponse response, String serverAddress) + protected void handleConnect(Request baseRequest, HttpServletRequest request, HttpServletResponse response, String serverAddress) { baseRequest.setHandled(true); try @@ -238,7 +239,7 @@ public class ConnectHandler extends HandlerWrapper return; } - final HttpTransport transport = baseRequest.getHttpChannel().getHttpTransport(); + HttpTransport transport = baseRequest.getHttpChannel().getHttpTransport(); // TODO Handle CONNECT over HTTP2! if (!(transport instanceof HttpConnection)) { @@ -248,7 +249,7 @@ public class ConnectHandler extends HandlerWrapper return; } - final AsyncContext asyncContext = request.startAsync(); + AsyncContext asyncContext = request.startAsync(); asyncContext.setTimeout(0); if (LOG.isDebugEnabled()) @@ -454,6 +455,7 @@ public class ConnectHandler extends HandlerWrapper * @param endPoint the endPoint to write to * @param buffer the buffer to write * @param callback the completion callback to invoke + * @param context the context information related to the connection */ protected void write(EndPoint endPoint, ByteBuffer buffer, Callback callback, ConcurrentMap<String, Object> context) { @@ -547,14 +549,8 @@ public class ConnectHandler extends HandlerWrapper protected void connectionFailed(SocketChannel channel, final Throwable ex, final Object attachment) { close(channel); - getExecutor().execute(new Runnable() - { - public void run() - { - ConnectContext connectContext = (ConnectContext)attachment; - onConnectFailure(connectContext.request, connectContext.response, connectContext.asyncContext, ex); - } - }); + ConnectContext connectContext = (ConnectContext)attachment; + onConnectFailure(connectContext.request, connectContext.response, connectContext.asyncContext, ex); } } @@ -614,14 +610,8 @@ public class ConnectHandler extends HandlerWrapper public void onOpen() { super.onOpen(); - getExecutor().execute(new Runnable() - { - public void run() - { - onConnectSuccess(connectContext, UpstreamConnection.this); - fillInterested(); - } - }); + onConnectSuccess(connectContext, UpstreamConnection.this); + fillInterested(); } @Override |