From: fhanik Date: Thu, 25 Mar 2010 19:32:46 +0000 (+0000) Subject: Clean up. The setAsync can be done in a single bottleneck, instead mixed into the... X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=a38b2d4a56a8f5966b09ae103ab87e5af092e98a;p=tomcat7.0 Clean up. The setAsync can be done in a single bottleneck, instead mixed into the processor git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@927555 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/java/org/apache/catalina/connector/Request.java b/java/org/apache/catalina/connector/Request.java index 36c15c35f..62ad7eb3c 100644 --- a/java/org/apache/catalina/connector/Request.java +++ b/java/org/apache/catalina/connector/Request.java @@ -1558,7 +1558,6 @@ public class Request } public AsyncContext getAsyncContext() { - // TODO SERVLET3 - async return this.asyncContext; } diff --git a/java/org/apache/coyote/ajp/AjpProcessor.java b/java/org/apache/coyote/ajp/AjpProcessor.java index 55431a9e5..2bd43fc58 100644 --- a/java/org/apache/coyote/ajp/AjpProcessor.java +++ b/java/org/apache/coyote/ajp/AjpProcessor.java @@ -482,7 +482,6 @@ public class AjpProcessor implements ActionHook { } if (async && !error) { rp.setStage(org.apache.coyote.Constants.STAGE_ENDED); - socket.setAsync(true); return SocketState.LONG; } else { rp.setStage(org.apache.coyote.Constants.STAGE_ENDED); @@ -513,7 +512,6 @@ public class AjpProcessor implements ActionHook { if (async) { if (error) { - socket.setAsync(false); response.setStatus(500); request.updateCounters(); recycle(); @@ -524,7 +522,6 @@ public class AjpProcessor implements ActionHook { return SocketState.LONG; } } else { - socket.setAsync(false); if (error) { response.setStatus(500); } diff --git a/java/org/apache/coyote/ajp/AjpProtocol.java b/java/org/apache/coyote/ajp/AjpProtocol.java index ff6492957..008a31044 100644 --- a/java/org/apache/coyote/ajp/AjpProtocol.java +++ b/java/org/apache/coyote/ajp/AjpProtocol.java @@ -385,8 +385,10 @@ public class AjpProtocol SocketState state = socket.isAsync()?processor.asyncDispatch(status):processor.process(socket); if (state == SocketState.LONG) { connections.put(socket, processor); + socket.setAsync(true); } else { connections.remove(socket); + socket.setAsync(false); } return state; } catch(java.net.SocketException e) { diff --git a/java/org/apache/coyote/http11/Http11Processor.java b/java/org/apache/coyote/http11/Http11Processor.java index bdd08529a..2e8f8015b 100644 --- a/java/org/apache/coyote/http11/Http11Processor.java +++ b/java/org/apache/coyote/http11/Http11Processor.java @@ -323,11 +323,9 @@ public class Http11Processor extends AbstractHttp11Processor implements ActionHo recycle(); return SocketState.CLOSED; } else { - socket.setAsync(true); return SocketState.LONG; } } else { - socket.setAsync(false); if ( error || (!keepAlive)) { recycle(); return SocketState.CLOSED; @@ -357,14 +355,12 @@ public class Http11Processor extends AbstractHttp11Processor implements ActionHo if (async) { if (error) { - socket.setAsync(false); recycle(); return SocketState.CLOSED; } else { return SocketState.LONG; } } else { - socket.setAsync(false); if ( error || (!keepAlive)) { recycle(); return SocketState.CLOSED; diff --git a/java/org/apache/coyote/http11/Http11Protocol.java b/java/org/apache/coyote/http11/Http11Protocol.java index a82ccc2a2..399079e04 100644 --- a/java/org/apache/coyote/http11/Http11Protocol.java +++ b/java/org/apache/coyote/http11/Http11Protocol.java @@ -261,8 +261,10 @@ public class Http11Protocol extends AbstractHttp11Protocol { SocketState state = socket.isAsync()?processor.asyncDispatch(status):processor.process(socket); if (state == SocketState.LONG) { connections.put(socket, processor); + socket.setAsync(true); } else { connections.remove(socket); + socket.setAsync(false); } return state; } catch(java.net.SocketException e) { diff --git a/java/org/apache/tomcat/util/net/AbstractEndpoint.java b/java/org/apache/tomcat/util/net/AbstractEndpoint.java index a2f237ab4..6121e072d 100644 --- a/java/org/apache/tomcat/util/net/AbstractEndpoint.java +++ b/java/org/apache/tomcat/util/net/AbstractEndpoint.java @@ -146,12 +146,12 @@ public abstract class AbstractEndpoint { return socketProperties; } - - - // ----------------------------------------------------------------- Properties + private int maxConnections = 10000; + public void setMaxConnections(int maxCon) { this.maxConnections = maxCon; } + public int getMaxConnections() { return this.maxConnections; } /** * External Executor based thread pool. */ diff --git a/java/org/apache/tomcat/util/net/JIoEndpoint.java b/java/org/apache/tomcat/util/net/JIoEndpoint.java index ff7e86404..3a87df9de 100644 --- a/java/org/apache/tomcat/util/net/JIoEndpoint.java +++ b/java/org/apache/tomcat/util/net/JIoEndpoint.java @@ -512,12 +512,4 @@ public class JIoEndpoint extends AbstractEndpoint { protected ConcurrentLinkedQueue waitingRequests = new ConcurrentLinkedQueue(); - protected class RequestProcessor implements Runnable { - - @Override - public void run() { - - } - - } }