public abstract class AbstractAjpProcessor<S> extends AbstractProcessor<S>
Modifier and Type | Class and Description |
---|---|
protected class |
AbstractAjpProcessor.SocketInputBuffer
This class is an input buffer which will read its data from an input
stream.
|
protected class |
AbstractAjpProcessor.SocketOutputBuffer
This class is an output buffer which will write data to an output
stream.
|
Modifier and Type | Field and Description |
---|---|
protected MessageBytes |
bodyBytes
Body message.
|
protected AjpMessage |
bodyMessage
Body message.
|
protected long |
bytesWritten
Bytes written to client for the current request.
|
protected MessageBytes |
certificates
Byte chunk for certs.
|
protected String |
clientCertProvider
When client certificate information is presented in a form other than
instances of
X509Certificate it needs to be
converted before it can be used and this property controls which JSSE
provider is used to perform the conversion. |
protected boolean |
empty
Body empty flag.
|
protected static byte[] |
endAndCloseMessageArray |
protected static byte[] |
endMessageArray
End message array.
|
protected boolean |
endOfStream
End of stream flag.
|
protected boolean |
error
Error flag.
|
protected boolean |
finished
Finished response.
|
protected boolean |
first
First read.
|
protected static byte[] |
flushMessageArray
Flush message array.
|
protected byte[] |
getBodyMessageArray
GetBody message array.
|
protected char[] |
hostNameC
Host name (used to avoid useless B2C conversion on the host name).
|
protected int |
keepAliveTimeout
The number of milliseconds Tomcat will wait for a subsequent request
before closing the connection.
|
protected int |
packetSize
AJP packet size.
|
protected static byte[] |
pongMessageArray
Pong message array.
|
protected boolean |
replay
Replay read.
|
protected AjpMessage |
requestHeaderMessage
Header message.
|
protected String |
requiredSecret
Required secret.
|
protected AjpMessage |
responseMessage
Message used for response composition.
|
protected static StringManager |
sm
The string manager for this package.
|
protected MessageBytes |
tmpMB
Temp message bytes used for processing.
|
protected boolean |
tomcatAuthentication
Use Tomcat authentication ?
|
adapter, asyncStateMachine, endpoint, request, response, socketWrapper
Constructor and Description |
---|
AbstractAjpProcessor(int packetSize,
AbstractEndpoint 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.
|
String |
getClientCertProvider() |
HttpUpgradeHandler |
getHttpUpgradeHandler() |
int |
getKeepAliveTimeout() |
protected abstract Log |
getLog() |
boolean |
getTomcatAuthentication() |
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 |
parseHost(MessageBytes valueMB)
Parse host.
|
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 |
setClientCertProvider(String s) |
void |
setKeepAliveTimeout(int timeout) |
void |
setRequiredSecret(String requiredSecret) |
void |
setSslSupport(SSLSupport sslSupport) |
void |
setTomcatAuthentication(boolean tomcatAuthentication) |
AbstractEndpoint.Handler.SocketState |
upgradeDispatch()
Processes data received on a connection that has been through an HTTP
upgrade.
|
AbstractEndpoint.Handler.SocketState |
upgradeDispatch(SocketStatus status) |
asyncPostProcess, getAdapter, getEndpoint, getExecutor, getRequest, getSocketWrapper, isAsync, process, setAdapter, setSocketWrapper
protected 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 boolean error
protected char[] hostNameC
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 int keepAliveTimeout
protected boolean tomcatAuthentication
protected String requiredSecret
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 endpoint)
protected abstract Log getLog()
public int getKeepAliveTimeout()
public void setKeepAliveTimeout(int timeout)
public boolean getTomcatAuthentication()
public void setTomcatAuthentication(boolean tomcatAuthentication)
public void setRequiredSecret(String requiredSecret)
public String getClientCertProvider()
public void setClientCertProvider(String s)
public final void action(ActionCode actionCode, Object param)
actionCode
- Type of the actionparam
- Action parameterpublic AbstractEndpoint.Handler.SocketState asyncDispatch(SocketStatus status)
AbstractProcessor
asyncDispatch
in interface Processor<S>
asyncDispatch
in class AbstractProcessor<S>
public void setSslSupport(SSLSupport sslSupport)
public AbstractEndpoint.Handler.SocketState event(SocketStatus status) throws IOException
AbstractProcessor
event
in interface Processor<S>
event
in class AbstractProcessor<S>
IOException
public AbstractEndpoint.Handler.SocketState upgradeDispatch() throws IOException
AbstractProcessor
upgradeDispatch
in interface Processor<S>
upgradeDispatch
in class AbstractProcessor<S>
IOException
@Deprecated public UpgradeInbound getUpgradeInbound()
getUpgradeInbound
in interface Processor<S>
getUpgradeInbound
in class AbstractProcessor<S>
public AbstractEndpoint.Handler.SocketState upgradeDispatch(SocketStatus status) throws IOException
IOException
public 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
IOException
protected abstract boolean receive() throws IOException
IOException
public final boolean isComet()
public final boolean isUpgrade()
protected boolean refillReadBuffer() throws IOException
IOException
protected void prepareRequest()
protected void parseHost(MessageBytes valueMB)
protected void prepareResponse() throws IOException
IOException
protected void flush(boolean explicit) throws IOException
IOException
protected void finish() throws IOException
IOException
Copyright © 2000-2015 Apache Software Foundation. All Rights Reserved.