Author: markt Date: Mon Nov 10 16:46:50 2014 New Revision: 1637930 URL: http://svn.apache.org/r1637930 Log: Drop the connector specific ServletInputStream implementations for HTTP upgrade
Added: tomcat/trunk/java/org/apache/coyote/http11/upgrade/ServletInputStreamImpl.java (contents, props changed) - copied, changed from r1637929, tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractServletInputStream.java Removed: tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractServletInputStream.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/AprServletInputStream.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/NioServletInputStream.java Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractProcessor.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/AprProcessor.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2Processor.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/NioProcessor.java Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractProcessor.java?rev=1637930&r1=1637929&r2=1637930&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractProcessor.java Mon Nov 10 16:46:50 2014 @@ -42,11 +42,11 @@ public abstract class AbstractProcessor< protected abstract Log getLog(); private final HttpUpgradeHandler httpUpgradeHandler; - private final AbstractServletInputStream upgradeServletInputStream; + private final ServletInputStreamImpl upgradeServletInputStream; private final AbstractServletOutputStream<S> upgradeServletOutputStream; protected AbstractProcessor (HttpUpgradeHandler httpUpgradeHandler, - AbstractServletInputStream upgradeServletInputStream, + ServletInputStreamImpl upgradeServletInputStream, AbstractServletOutputStream<S> upgradeServletOutputStream) { this.httpUpgradeHandler = httpUpgradeHandler; this.upgradeServletInputStream = upgradeServletInputStream; Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/AprProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/AprProcessor.java?rev=1637930&r1=1637929&r2=1637930&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/AprProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/AprProcessor.java Mon Nov 10 16:46:50 2014 @@ -37,7 +37,7 @@ public class AprProcessor extends Abstra public AprProcessor(SocketWrapperBase<Long> wrapper, ByteBuffer leftOverInput, HttpUpgradeHandler httpUpgradeProcessor, int asyncWriteBufferSize) { super(httpUpgradeProcessor, - new AprServletInputStream(wrapper), + new ServletInputStreamImpl(wrapper), new AprServletOutputStream(wrapper, asyncWriteBufferSize)); ((AprSocketWrapper) wrapper).setLeftOverInput(leftOverInput); Socket.timeoutSet(wrapper.getSocket().longValue(), INFINITE_TIMEOUT); Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2Processor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2Processor.java?rev=1637930&r1=1637929&r2=1637930&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2Processor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2Processor.java Mon Nov 10 16:46:50 2014 @@ -36,7 +36,7 @@ public class Nio2Processor extends Abstr public Nio2Processor(SocketWrapperBase<Nio2Channel> wrapper, ByteBuffer leftoverInput, HttpUpgradeHandler httpUpgradeProcessor, int asyncWriteBufferSize) { super(httpUpgradeProcessor, - new Nio2ServletInputStream(wrapper), + new ServletInputStreamImpl(wrapper), new Nio2ServletOutputStream(wrapper, asyncWriteBufferSize)); wrapper.setTimeout(INFINITE_TIMEOUT); Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/NioProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/NioProcessor.java?rev=1637930&r1=1637929&r2=1637930&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/NioProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/NioProcessor.java Mon Nov 10 16:46:50 2014 @@ -36,7 +36,7 @@ public class NioProcessor extends Abstra public NioProcessor(SocketWrapperBase<NioChannel> wrapper, ByteBuffer leftoverInput, HttpUpgradeHandler httpUpgradeProcessor, int asyncWriteBufferSize) { super(httpUpgradeProcessor, - new NioServletInputStream(wrapper), + new ServletInputStreamImpl(wrapper), new NioServletOutputStream(wrapper, asyncWriteBufferSize)); wrapper.setTimeout(INFINITE_TIMEOUT); Copied: tomcat/trunk/java/org/apache/coyote/http11/upgrade/ServletInputStreamImpl.java (from r1637929, tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractServletInputStream.java) URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/ServletInputStreamImpl.java?p2=tomcat/trunk/java/org/apache/coyote/http11/upgrade/ServletInputStreamImpl.java&p1=tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractServletInputStream.java&r1=1637929&r2=1637930&rev=1637930&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractServletInputStream.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/ServletInputStreamImpl.java Mon Nov 10 16:46:50 2014 @@ -21,12 +21,15 @@ import java.io.IOException; import javax.servlet.ReadListener; import javax.servlet.ServletInputStream; +import org.apache.tomcat.util.net.SocketWrapperBase; import org.apache.tomcat.util.res.StringManager; -public abstract class AbstractServletInputStream extends ServletInputStream { +public class ServletInputStreamImpl extends ServletInputStream { protected static final StringManager sm = StringManager.getManager( - AbstractServletInputStream.class.getPackage().getName()); + ServletInputStreamImpl.class.getPackage().getName()); + + private final SocketWrapperBase<?> socketWrapper; private volatile boolean closeRequired = false; // Start in blocking-mode @@ -34,6 +37,12 @@ public abstract class AbstractServletInp private volatile ReadListener listener = null; private volatile ClassLoader applicationLoader = null; + + public ServletInputStreamImpl(SocketWrapperBase<?> socketWrapper) { + this.socketWrapper = socketWrapper; + } + + @Override public final boolean isFinished() { if (listener == null) { @@ -59,7 +68,7 @@ public abstract class AbstractServletInp } try { - ready = Boolean.valueOf(doIsReady()); + ready = Boolean.valueOf(socketWrapper.isReady()); } catch (IOException e) { onError(e); } @@ -117,7 +126,7 @@ public abstract class AbstractServletInp preReadChecks(); try { - return doRead(listener == null, b, off, len); + return socketWrapper.read(listener == null, b, off, len); } catch (IOException ioe) { closeRequired = true; throw ioe; @@ -129,7 +138,7 @@ public abstract class AbstractServletInp @Override public void close() throws IOException { closeRequired = true; - doClose(); + socketWrapper.close(); } @@ -149,7 +158,7 @@ public abstract class AbstractServletInp byte[] b = new byte[1]; int result; try { - result = doRead(listener == null, b, 0, 1); + result = socketWrapper.read(listener == null, b, 0, 1); } catch (IOException ioe) { closeRequired = true; throw ioe; @@ -202,17 +211,4 @@ public abstract class AbstractServletInp protected final boolean isCloseRequired() { return closeRequired; } - - - protected abstract boolean doIsReady() throws IOException; - - /** - * Abstract method to be overridden by concrete implementations. The base - * class will ensure that there are no concurrent calls to this method for - * the same socket. - */ - protected abstract int doRead(boolean block, byte[] b, int off, int len) - throws IOException; - - protected abstract void doClose() throws IOException; } Propchange: tomcat/trunk/java/org/apache/coyote/http11/upgrade/ServletInputStreamImpl.java ------------------------------------------------------------------------------ svn:eol-style = native --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org