Author: markt Date: Tue Oct 20 09:00:45 2015 New Revision: 1709545 URL: http://svn.apache.org/viewvc?rev=1709545&view=rev Log: Rename process() -> service() Create a new process() method to hold code pulled up from StreamProcessor and AbstractConnectionHandler
Modified: tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java tomcat/trunk/java/org/apache/coyote/AbstractProcessorLight.java tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java tomcat/trunk/java/org/apache/coyote/Processor.java tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java Modified: tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java?rev=1709545&r1=1709544&r2=1709545&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/AbstractProcessor.java Tue Oct 20 09:00:45 2015 @@ -204,12 +204,6 @@ public abstract class AbstractProcessor } - /** - * Process an in-progress request that is not longer in standard HTTP mode. - * Uses currently include Servlet 3.0 Async and HTTP upgrade connections. - * Further uses may be added in the future. These will typically start as - * HTTP requests. - */ @Override public final SocketState dispatch(SocketStatus status) { Modified: tomcat/trunk/java/org/apache/coyote/AbstractProcessorLight.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AbstractProcessorLight.java?rev=1709545&r1=1709544&r2=1709545&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/AbstractProcessorLight.java (original) +++ tomcat/trunk/java/org/apache/coyote/AbstractProcessorLight.java Tue Oct 20 09:00:45 2015 @@ -16,11 +16,14 @@ */ package org.apache.coyote; +import java.io.IOException; import java.util.Iterator; import java.util.Set; import java.util.concurrent.CopyOnWriteArraySet; +import org.apache.tomcat.util.net.AbstractEndpoint.Handler.SocketState; import org.apache.tomcat.util.net.DispatchType; +import org.apache.tomcat.util.net.SocketWrapperBase; /** * This is a light-weight abstract processor implementation that is intended as @@ -33,6 +36,13 @@ public abstract class AbstractProcessorL @Override + public SocketState process(SocketWrapperBase<?> socketWrapper) throws IOException { + // TODO Auto-generated method stub + return null; + } + + + @Override public void addDispatch(DispatchType dispatchType) { synchronized (dispatches) { dispatches.add(dispatchType); Modified: tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java?rev=1709545&r1=1709544&r2=1709545&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java (original) +++ tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java Tue Oct 20 09:00:45 2015 @@ -714,13 +714,13 @@ public abstract class AbstractProtocol<S // loop and call release() which will recycle the // processor (and input buffer) deleting any // pipe-lined data. To avoid this, process it now. - state = processor.process(wrapper); + state = processor.service(wrapper); } } else if (status == SocketStatus.OPEN_WRITE) { // Extra write event likely after async, ignore state = SocketState.LONG; } else { - state = processor.process(wrapper); + state = processor.service(wrapper); } if (state != SocketState.CLOSED && processor.isAsync()) { Modified: tomcat/trunk/java/org/apache/coyote/Processor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/Processor.java?rev=1709545&r1=1709544&r2=1709545&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/Processor.java (original) +++ tomcat/trunk/java/org/apache/coyote/Processor.java Tue Oct 20 09:00:45 2015 @@ -34,11 +34,13 @@ import org.apache.tomcat.util.net.Socket * Common interface for processors of all protocols. */ public interface Processor { + Executor getExecutor(); /** - * Process HTTP requests. All requests are treated as HTTP requests to start - * with although they may change type during processing. + * Process a connection. This is called whenever an event occurs (e.g. more + * data arrives) that allows processing to continue for a connection that is + * not currently being processed. * * @param socketWrapper The connection to process * @@ -50,6 +52,30 @@ public interface Processor { */ SocketState process(SocketWrapperBase<?> socketWrapper) throws IOException; + /** + * Service a 'standard' HTTP request. This method is called for both new + * requests and for requests that have partially read the HTTP request line + * or HTTP headers. Once the headers have been fully read this method is not + * called again until there is a new HTTP request to process. Note that the + * request type may change during processing which may result in one or more + * calls to {@link #dispatch(SocketStatus)}. + * + * @param socketWrapper The connection to process + * + * @return The state the caller should put the socket in when this method + * returns + * + * @throws IOException If an I/O error occurs during the processing of the + * request + */ + SocketState service(SocketWrapperBase<?> socketWrapper) throws IOException; + + /** + * Process an in-progress request that is not longer in standard HTTP mode. + * Uses currently include Servlet 3.0 Async and HTTP upgrade connections. + * Further uses may be added in the future. These will typically start as + * HTTP requests. + */ SocketState dispatch(SocketStatus status); SocketState asyncPostProcess(); Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java?rev=1709545&r1=1709544&r2=1709545&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java Tue Oct 20 09:00:45 2015 @@ -645,7 +645,7 @@ public class AjpProcessor extends Abstra * @throws IOException error during an I/O operation */ @Override - public SocketState process(SocketWrapperBase<?> socket) throws IOException { + public SocketState service(SocketWrapperBase<?> socket) throws IOException { RequestInfo rp = request.getRequestProcessor(); rp.setStage(org.apache.coyote.Constants.STAGE_PARSE); Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java?rev=1709545&r1=1709544&r2=1709545&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java Tue Oct 20 09:00:45 2015 @@ -925,7 +925,7 @@ public class Http11Processor extends Abs * @throws IOException error during an I/O operation */ @Override - public SocketState process(SocketWrapperBase<?> socketWrapper) + public SocketState service(SocketWrapperBase<?> socketWrapper) throws IOException { RequestInfo rp = request.getRequestProcessor(); rp.setStage(org.apache.coyote.Constants.STAGE_PARSE); Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java?rev=1709545&r1=1709544&r2=1709545&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java Tue Oct 20 09:00:45 2015 @@ -70,7 +70,7 @@ public abstract class UpgradeProcessorBa @Override - public final SocketState process(SocketWrapperBase<?> socketWrapper) throws IOException { + public final SocketState service(SocketWrapperBase<?> socketWrapper) throws IOException { return null; } Modified: tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java?rev=1709545&r1=1709544&r2=1709545&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java Tue Oct 20 09:00:45 2015 @@ -87,7 +87,7 @@ public class StreamProcessor extends Abs // Should never happen throw new IllegalStateException(); } else { - state = process((SocketWrapperBase<?>) null); + state = service((SocketWrapperBase<?>) null); } if (state != SocketState.CLOSED && isAsync()) { @@ -432,7 +432,7 @@ public class StreamProcessor extends Abs @Override - public SocketState process(SocketWrapperBase<?> socket) throws IOException { + public SocketState service(SocketWrapperBase<?> socket) throws IOException { try { adapter.service(request, response); } catch (Exception e) { --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org