public abstract class AbstractAjpProcessor<S> extends AbstractProcessor<S>
| Modifier and Type | Class and Description | 
|---|---|
| protected class  | AbstractAjpProcessor.SocketInputBufferThis class is an input buffer which will read its data from an input
 stream. | 
| protected class  | AbstractAjpProcessor.SocketOutputBufferThis class is an output buffer which will write data to an output
 stream. | 
| Modifier and Type | Field and Description | 
|---|---|
| protected boolean | ajpFlushSend AJP flush packet when flushing. | 
| protected MessageBytes | bodyBytesBody message. | 
| protected AjpMessage | bodyMessageBody message. | 
| protected long | bytesWrittenBytes written to client for the current request. | 
| protected MessageBytes | certificatesByte chunk for certs. | 
| protected String | clientCertProviderWhen client certificate information is presented in a form other than
 instances of  X509Certificateit needs to be
 converted before it can be used and this property controls which JSSE
 provider is used to perform the conversion. | 
| protected boolean | emptyBody empty flag. | 
| protected static byte[] | endAndCloseMessageArray | 
| protected static byte[] | endMessageArrayEnd message array. | 
| protected boolean | endOfStreamEnd of stream flag. | 
| protected boolean | finishedFinished response. | 
| protected boolean | firstFirst read. | 
| protected static byte[] | flushMessageArrayFlush message array. | 
| protected byte[] | getBodyMessageArrayGetBody message array. | 
| protected int | keepAliveTimeoutThe number of milliseconds Tomcat will wait for a subsequent request
 before closing the connection. | 
| protected int | packetSizeAJP packet size. | 
| protected static byte[] | pongMessageArrayPong message array. | 
| protected boolean | replayReplay read. | 
| protected AjpMessage | requestHeaderMessageHeader message. | 
| protected String | requiredSecretDeprecated.  | 
| protected AjpMessage | responseMessageMessage used for response composition. | 
| protected String | secret | 
| protected static StringManager | smThe string manager for this package. | 
| protected MessageBytes | tmpMBTemp message bytes used for processing. | 
| protected boolean | tomcatAuthenticationUse Tomcat authentication ? | 
adapter, asyncStateMachine, endpoint, hostNameC, request, response, socketWrapper, userDataHelper| Constructor and Description | 
|---|
| AbstractAjpProcessor(int packetSize,
                    AbstractEndpoint<S> endpoint) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | action(ActionCode actionCode,
      Object param)Send an action to the connector. | 
| protected abstract void | actionInternal(ActionCode actionCode,
              Object param) | 
| AbstractEndpoint.Handler.SocketState | asyncDispatch(SocketStatus status)Process in-progress Servlet 3.0 Async requests. | 
| AbstractEndpoint.Handler.SocketState | event(SocketStatus status)Process in-progress Comet requests. | 
| protected void | finish()Finish AJP response. | 
| protected void | flush(boolean explicit)Callback to write data from the buffer. | 
| boolean | getAjpFlush() | 
| String | getClientCertProvider() | 
| HttpUpgradeHandler | getHttpUpgradeHandler() | 
| int | getKeepAliveTimeout() | 
| boolean | getTomcatAuthentication() | 
| boolean | getTomcatAuthorization() | 
| UpgradeInbound | getUpgradeInbound()Deprecated. 
 Will be removed in Tomcat 8.0.x. | 
| boolean | isComet() | 
| boolean | isUpgrade() | 
| protected abstract void | output(byte[] src,
      int offset,
      int length) | 
| protected void | populateHost()Called when a host header is not present in the request (e.g. | 
| protected void | populatePort()Called when a host header is not present or is empty in the request (e.g. | 
| protected void | prepareRequest()After reading the request headers, we have to setup the request filters. | 
| protected void | prepareResponse()When committing the response, we have to validate the set of headers, as
 well as setup the response filters. | 
| protected abstract boolean | receive() | 
| void | recycle(boolean socketClosing)Recycle the processor, ready for the next request which may be on the
 same connection or a different connection. | 
| protected boolean | refillReadBuffer()Get more request body data from the web server and store it in the
 internal buffer. | 
| protected abstract 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. | 
| void | setAjpFlush(boolean ajpFlush) | 
| void | setAllowedRequestAttributesPatternPattern(Pattern allowedRequestAttributesPatternPattern) | 
| void | setClientCertProvider(String s) | 
| void | setKeepAliveTimeout(int timeout) | 
| void | setRequiredSecret(String requiredSecret)Deprecated.  | 
| void | setSecret(String secret) | 
| void | setSslSupport(SSLSupport sslSupport) | 
| void | setTomcatAuthentication(boolean tomcatAuthentication) | 
| void | setTomcatAuthorization(boolean tomcatAuthorization) | 
| AbstractEndpoint.Handler.SocketState | upgradeDispatch()Processes data received on a connection that has been through an HTTP
 upgrade. | 
| AbstractEndpoint.Handler.SocketState | upgradeDispatch(SocketStatus status) | 
asyncPostProcess, errorDispatch, getAdapter, getAsyncStateMachine, getEndpoint, getErrorState, getExecutor, getLog, getMaxCookieCount, getRequest, getSocketWrapper, isAsync, parseHost, process, resetErrorState, setAdapter, setErrorState, setMaxCookieCount, setSocketWrapperprotected static final StringManager sm
protected static final byte[] endMessageArray
protected static final byte[] endAndCloseMessageArray
protected static final byte[] flushMessageArray
protected static final byte[] pongMessageArray
protected final byte[] getBodyMessageArray
protected int packetSize
protected AjpMessage requestHeaderMessage
protected AjpMessage responseMessage
protected AjpMessage bodyMessage
protected MessageBytes bodyBytes
protected MessageBytes tmpMB
protected MessageBytes certificates
protected boolean endOfStream
protected boolean empty
protected boolean first
protected boolean replay
protected boolean finished
protected long bytesWritten
protected boolean ajpFlush
protected int keepAliveTimeout
protected boolean tomcatAuthentication
@Deprecated protected String requiredSecret
protected String secret
protected String clientCertProvider
X509Certificate it needs to be
 converted before it can be used and this property controls which JSSE
 provider is used to perform the conversion. For example it is used with
 the AJP connectors, the HTTP APR connector and with the
 SSLValve. If not specified, the
 default provider will be used.public AbstractAjpProcessor(int packetSize,
                    AbstractEndpoint<S> endpoint)
public boolean getAjpFlush()
public void setAjpFlush(boolean ajpFlush)
public int getKeepAliveTimeout()
public void setKeepAliveTimeout(int timeout)
public boolean getTomcatAuthentication()
public void setTomcatAuthentication(boolean tomcatAuthentication)
public boolean getTomcatAuthorization()
public void setTomcatAuthorization(boolean tomcatAuthorization)
public void setSecret(String secret)
@Deprecated public void setRequiredSecret(String requiredSecret)
public String getClientCertProvider()
public void setClientCertProvider(String s)
public void setAllowedRequestAttributesPatternPattern(Pattern allowedRequestAttributesPatternPattern)
public final void action(ActionCode actionCode, Object param)
actionCode - Type of the actionparam - Action parameterpublic AbstractEndpoint.Handler.SocketState asyncDispatch(SocketStatus status)
AbstractProcessorasyncDispatch in interface Processor<S>asyncDispatch in class AbstractProcessor<S>public void setSslSupport(SSLSupport sslSupport)
public AbstractEndpoint.Handler.SocketState event(SocketStatus status) throws IOException
AbstractProcessorevent in interface Processor<S>event in class AbstractProcessor<S>IOExceptionpublic AbstractEndpoint.Handler.SocketState upgradeDispatch() throws IOException
AbstractProcessorupgradeDispatch in interface Processor<S>upgradeDispatch in class AbstractProcessor<S>IOException - An IO error occurred@Deprecated public UpgradeInbound getUpgradeInbound()
getUpgradeInbound in interface Processor<S>getUpgradeInbound in class AbstractProcessor<S>public AbstractEndpoint.Handler.SocketState upgradeDispatch(SocketStatus status) throws IOException
IOExceptionpublic HttpUpgradeHandler getHttpUpgradeHandler()
public void recycle(boolean socketClosing)
socketClosing - Indicates if the socket is about to be closed
                      allowing the processor to perform any additional
                      clean-up that may be requiredprotected abstract void actionInternal(ActionCode actionCode, Object param)
protected abstract void resetTimeouts()
protected abstract void output(byte[] src,
          int offset,
          int length)
                        throws IOException
IOExceptionprotected abstract boolean receive()
                            throws IOException
IOExceptionpublic final boolean isComet()
public final boolean isUpgrade()
protected boolean refillReadBuffer()
                            throws IOException
IOException - An IO error occurredprotected void prepareRequest()
protected void populateHost()
The default implementation is a NO-OP.
This implementation populates the server name from the local name provided by the AJP message.
populateHost in class AbstractProcessor<S>protected void populatePort()
The default implementation is a NO-OP.
This implementation populates the server port from the local port provided by the AJP message.
populatePort in class AbstractProcessor<S>protected void prepareResponse()
                        throws IOException
IOException - An IO error occurredprotected void flush(boolean explicit)
              throws IOException
explicit - If true a flush message is sent, otherwise this
                  method is a NO-OPIOException - An IO error occurredprotected void finish()
               throws IOException
IOException - An IO error occurredCopyright © 2000-2020 Apache Software Foundation. All Rights Reserved.