Package org.apache.coyote.http11.upgrade
Class UpgradeProcessorInternal
- java.lang.Object
-
- org.apache.coyote.AbstractProcessorLight
-
- org.apache.coyote.http11.upgrade.UpgradeProcessorBase
-
- org.apache.coyote.http11.upgrade.UpgradeProcessorInternal
-
- All Implemented Interfaces:
java.lang.AutoCloseable,WebConnection,Processor
public class UpgradeProcessorInternal extends UpgradeProcessorBase
-
-
Field Summary
-
Fields inherited from class org.apache.coyote.http11.upgrade.UpgradeProcessorBase
INFINITE_TIMEOUT
-
-
Constructor Summary
Constructors Constructor Description UpgradeProcessorInternal(SocketWrapperBase<?> wrapper, UpgradeToken upgradeToken, UpgradeGroupInfo upgradeGroupInfo)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()AbstractEndpoint.Handler.SocketStatedispatch(SocketEvent status)Process an in-progress request that is not longer in standard HTTP mode.ServletInputStreamgetInputStream()Provides access to theServletInputStreamfor reading data from the client.protected LoggetLog()ServletOutputStreamgetOutputStream()Provides access to theServletOutputStreamfor writing data to the client.voidpause()Informs the processor that the underlying I/O layer has stopped accepting new connections.voidsetSslSupport(SSLSupport sslSupport)Set the SSL information for this HTTP connection.voidtimeoutAsync(long now)Check this processor to see if the timeout has expired and process a timeout if that is that case.-
Methods inherited from class org.apache.coyote.http11.upgrade.UpgradeProcessorBase
asyncPostProcess, checkAsyncTimeoutGeneration, getLeftoverInput, getRequest, getUpgradeToken, isAsync, isUpgrade, recycle, service
-
Methods inherited from class org.apache.coyote.AbstractProcessorLight
addDispatch, clearDispatches, getIteratorAndClearDispatches, logAccess, process
-
-
-
-
Constructor Detail
-
UpgradeProcessorInternal
public UpgradeProcessorInternal(SocketWrapperBase<?> wrapper, UpgradeToken upgradeToken, UpgradeGroupInfo upgradeGroupInfo)
-
-
Method Detail
-
dispatch
public AbstractEndpoint.Handler.SocketState dispatch(SocketEvent status)
Description copied from class:AbstractProcessorLightProcess 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.- Specified by:
dispatchin classAbstractProcessorLight- Parameters:
status- The event to process- Returns:
- The state the caller should put the socket in when this method returns
-
setSslSupport
public final void setSslSupport(SSLSupport sslSupport)
Description copied from interface:ProcessorSet the SSL information for this HTTP connection.- Parameters:
sslSupport- The SSL support object to use for this connection
-
pause
public void pause()
Description copied from interface:ProcessorInforms the processor that the underlying I/O layer has stopped accepting new connections. This is primarily intended to enable processors that use multiplexed connections to prevent further 'streams' being added to an existing multiplexed connection.
-
getLog
protected Log getLog()
- Specified by:
getLogin classAbstractProcessorLight
-
timeoutAsync
public void timeoutAsync(long now)
Description copied from interface:ProcessorCheck this processor to see if the timeout has expired and process a timeout if that is that case.Note: The name of this method originated with the Servlet 3.0 asynchronous processing but evolved over time to represent a timeout that is triggered independently of the socket read/write timeouts.
- Specified by:
timeoutAsyncin interfaceProcessor- Overrides:
timeoutAsyncin classUpgradeProcessorBase- Parameters:
now- The time (as returned bySystem.currentTimeMillis()to use as the current time to determine whether the timeout has expired. If negative, the timeout will always be treated as ifq it has expired.
-
close
public void close() throws java.lang.Exception- Throws:
java.lang.Exception
-
getInputStream
public ServletInputStream getInputStream() throws java.io.IOException
Description copied from interface:javax.servlet.http.WebConnectionProvides access to theServletInputStreamfor reading data from the client.- Returns:
- the input stream
- Throws:
java.io.IOException- If an I/O occurs while obtaining the stream
-
getOutputStream
public ServletOutputStream getOutputStream() throws java.io.IOException
Description copied from interface:javax.servlet.http.WebConnectionProvides access to theServletOutputStreamfor writing data to the client.- Returns:
- the output stream
- Throws:
java.io.IOException- If an I/O occurs while obtaining the stream
-
-