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:
AutoCloseable
,WebConnection
,Processor
-
Field Summary
Fields inherited from class org.apache.coyote.http11.upgrade.UpgradeProcessorBase
INFINITE_TIMEOUT
-
Constructor Summary
ConstructorDescriptionUpgradeProcessorInternal
(SocketWrapperBase<?> wrapper, UpgradeToken upgradeToken, UpgradeGroupInfo upgradeGroupInfo) -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
dispatch
(SocketEvent status) Process an in-progress request that is not longer in standard HTTP mode.Provides access to theServletInputStream
for reading data from the client.protected Log
getLog()
Provides access to theServletOutputStream
for writing data to the client.boolean
void
pause()
Informs the processor that the underlying I/O layer has stopped accepting new connections.final void
setSslSupport
(SSLSupport sslSupport) Set the SSL information for this HTTP connection.void
timeoutAsync
(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 Details
-
UpgradeProcessorInternal
public UpgradeProcessorInternal(SocketWrapperBase<?> wrapper, UpgradeToken upgradeToken, UpgradeGroupInfo upgradeGroupInfo)
-
-
Method Details
-
dispatch
Description copied from class:AbstractProcessorLight
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.- Specified by:
dispatch
in classAbstractProcessorLight
- Parameters:
status
- The event to process- Returns:
- The state the caller should put the socket in when this method returns
-
setSslSupport
Description copied from interface:Processor
Set 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:Processor
Informs 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
- Specified by:
getLog
in classAbstractProcessorLight
- Returns:
- the logger associated with this processor type
-
timeoutAsync
public void timeoutAsync(long now) Description copied from interface:Processor
Check 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:
timeoutAsync
in interfaceProcessor
- Overrides:
timeoutAsync
in 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 if it has expired.
-
hasAsyncIO
public boolean hasAsyncIO() -
close
- Throws:
Exception
-
getInputStream
Description copied from interface:javax.servlet.http.WebConnection
Provides access to theServletInputStream
for reading data from the client.- Returns:
- the input stream
- Throws:
IOException
- If an I/O occurs while obtaining the stream
-
getOutputStream
Description copied from interface:javax.servlet.http.WebConnection
Provides access to theServletOutputStream
for writing data to the client.- Returns:
- the output stream
- Throws:
IOException
- If an I/O occurs while obtaining the stream
-