public class AjpAprProcessor extends AbstractAjpProcessor<Long>
AbstractAjpProcessor.SocketInputBuffer, AbstractAjpProcessor.SocketOutputBuffer| Modifier and Type | Field and Description |
|---|---|
protected ByteBuffer |
inputBuffer
Direct buffer used for input.
|
protected ByteBuffer |
outputBuffer
Direct buffer used for output.
|
ajpFlush, bodyBytes, bodyMessage, bytesWritten, certificates, clientCertProvider, empty, endAndCloseMessageArray, endMessageArray, endOfStream, finished, first, flushMessageArray, getBodyMessageArray, keepAliveTimeout, packetSize, pongMessageArray, replay, requestHeaderMessage, requiredSecret, responseMessage, secret, sm, tmpMB, tomcatAuthenticationadapter, asyncStateMachine, endpoint, hostNameC, request, response, socketWrapper, userDataHelper| Constructor and Description |
|---|
AjpAprProcessor(int packetSize,
AprEndpoint endpoint) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
actionInternal(ActionCode actionCode,
Object param)
Send an action to the connector.
|
protected Log |
getLog() |
protected void |
output(byte[] src,
int offset,
int length) |
AbstractEndpoint.Handler.SocketState |
process(SocketWrapper<Long> socket)
Process pipelined HTTP requests using the specified input and output
streams.
|
protected boolean |
read(int n)
Read at least the specified amount of bytes, and place them
in the input buffer.
|
protected boolean |
readMessage(AjpMessage message,
boolean first,
boolean useAvailableData)
Read an AJP message.
|
protected boolean |
readt(int n,
boolean useAvailableData)
Read at least the specified amount of bytes, and place them
in the input buffer.
|
boolean |
receive()
Receive a chunk of data.
|
void |
recycle(boolean socketClosing)
Recycle the processor.
|
protected void |
resetTimeouts()
Provides a mechanism for those connector implementations (currently only
NIO) that need to reset timeouts from Async timeouts to standard HTTP
timeouts once async processing completes.
|
action, asyncDispatch, event, finish, flush, getAjpFlush, getClientCertProvider, getHttpUpgradeHandler, getKeepAliveTimeout, getTomcatAuthentication, getTomcatAuthorization, getUpgradeInbound, isComet, isUpgrade, populateHost, populatePort, prepareRequest, prepareResponse, refillReadBuffer, setAjpFlush, setAllowedRequestAttributesPatternPattern, setClientCertProvider, setKeepAliveTimeout, setRequiredSecret, setSecret, setSslSupport, setTomcatAuthentication, setTomcatAuthorization, upgradeDispatch, upgradeDispatchasyncPostProcess, errorDispatch, getAdapter, getAsyncStateMachine, getEndpoint, getErrorState, getExecutor, getMaxCookieCount, getRequest, getSocketWrapper, isAsync, parseHost, resetErrorState, setAdapter, setErrorState, setMaxCookieCount, setSocketWrapperprotected ByteBuffer inputBuffer
protected ByteBuffer outputBuffer
public AjpAprProcessor(int packetSize,
AprEndpoint endpoint)
protected Log getLog()
getLog in class AbstractProcessor<Long>public AbstractEndpoint.Handler.SocketState process(SocketWrapper<Long> socket) throws IOException
process in interface Processor<Long>process in class AbstractProcessor<Long>IOException - error during an I/O operationprotected void actionInternal(ActionCode actionCode, Object param)
actionInternal in class AbstractAjpProcessor<Long>actionCode - Type of the actionparam - Action parameterprotected void resetTimeouts()
AbstractAjpProcessorresetTimeouts in class AbstractAjpProcessor<Long>protected void output(byte[] src,
int offset,
int length)
throws IOException
output in class AbstractAjpProcessor<Long>IOExceptionprotected boolean read(int n)
throws IOException
n - The minimum number of bytes to read before the method returnstrueIOException - If an I/O error occurs during the readprotected boolean readt(int n,
boolean useAvailableData)
throws IOException
n - The minimum number of bytes to readuseAvailableData - If true, only proceed with the read if
there is at least one byte of data available to
read in the input buffertrue if the number of bytes requested was read,
false if no bytes were readIOException - if an I/O error occurs during the readpublic boolean receive()
throws IOException
receive in class AbstractAjpProcessor<Long>IOExceptionprotected boolean readMessage(AjpMessage message, boolean first, boolean useAvailableData) throws IOException
message - The message object to be populatedfirst - is true if the message is the first in the request, which
will cause a short duration blocking readuseAvailableData - If true and if first is
true, only proceed with the read if there
is at least one byte of data available to read in
the input bufferIOException - any other failure, including incomplete readspublic void recycle(boolean socketClosing)
Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.