Skip to content

Commit 9cc5b73

Browse files
code optims
1 parent cfee957 commit 9cc5b73

1 file changed

Lines changed: 3 additions & 13 deletions

File tree

src/main/java/com/testingbot/tunnel/proxy/WebsocketHandler.java

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,13 @@
1414
import java.nio.channels.SelectionKey;
1515
import java.nio.channels.SocketChannel;
1616
import java.util.Collections;
17-
import java.util.Enumeration;
1817
import java.util.HashSet;
1918
import java.util.LinkedHashMap;
2019
import java.util.Map;
2120
import java.util.Set;
2221
import java.util.concurrent.ConcurrentHashMap;
2322
import java.util.concurrent.ConcurrentMap;
2423
import java.util.concurrent.Executor;
25-
import java.util.logging.Level;
2624
import org.eclipse.jetty.io.ByteBufferPool;
2725
import org.eclipse.jetty.io.Connection;
2826
import org.eclipse.jetty.io.EndPoint;
@@ -193,16 +191,6 @@ protected SelectorManager newSelectorManager() {
193191

194192
public void handle(String target, Request jettyRequest, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
195193
String serverAddress = jettyRequest.getHttpURI().getAuthority();
196-
Enumeration<String> headerNames = request.getHeaderNames();
197-
if (headerNames != null) {
198-
StringBuilder sb = new StringBuilder();
199-
String header;
200-
201-
while (headerNames.hasMoreElements()) {
202-
header = headerNames.nextElement();
203-
sb.append(header).append(": ").append(request.getHeader(header)).append(System.lineSeparator());
204-
}
205-
}
206194

207195
if (request.getHeader("Upgrade") != null && request.getHeader("Upgrade").equalsIgnoreCase("websocket")) {
208196
this.handleConnect(jettyRequest, request, response, serverAddress);
@@ -231,9 +219,10 @@ protected void handleConnect(Request baseRequest, final HttpServletRequest reque
231219
LOG.info("Connecting to {}:{}", host, port);
232220

233221
this.getExecutor().execute(() -> {
222+
SocketChannel channel = null;
234223
try {
235224
// Connect to target using blocking I/O for the handshake
236-
SocketChannel channel = SocketChannel.open();
225+
channel = SocketChannel.open();
237226
channel.socket().setTcpNoDelay(true);
238227
channel.socket().setSoTimeout((int) getConnectTimeout());
239228
channel.connect(new InetSocketAddress(host, port));
@@ -249,6 +238,7 @@ protected void handleConnect(Request baseRequest, final HttpServletRequest reque
249238

250239
WebsocketHandler.this.selector.accept(channel, connectContext);
251240
} catch (Exception e) {
241+
WebsocketHandler.this.close(channel);
252242
LOG.warn("WebSocket connect/handshake failed", e);
253243
WebsocketHandler.this.onConnectFailure(request, response, asyncContext, e);
254244
}

0 commit comments

Comments
 (0)