|
Apache Tomcat 7.0.28 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.coyote.AbstractProcessor<S> org.apache.coyote.http11.AbstractHttp11Processor<S>
public abstract class AbstractHttp11Processor<S>
Field Summary | |
---|---|
protected boolean |
comet
Comet used. |
protected String[] |
compressableMimeTypes
List of MIMES which could be gzipped |
protected int |
compressionLevel
Allowed compression level. |
protected int |
compressionMinSize
Minimum content size to make compression. |
protected int |
connectionUploadTimeout
Maximum timeout on uploads. 5 minutes as in Apache HTTPD server. |
protected boolean |
contentDelimitation
Content delimiter for the request (if false, the connection will be closed at the end of the request). |
protected boolean |
disableUploadTimeout
Flag to disable setting a different time-out on uploads. |
protected boolean |
error
Error flag. |
protected boolean |
expectation
Is there an expectation ? |
protected char[] |
hostNameC
Host name (used to avoid useless B2C conversion on the host name). |
protected boolean |
http09
HTTP/0.9 flag. |
protected boolean |
http11
HTTP/1.1 flag. |
protected boolean |
keepAlive
Keep-alive. |
protected int |
keepAliveTimeout
The number of seconds Tomcat will wait for a subsequent request before closing the connection. |
protected boolean |
keptAlive
Flag used to indicate that the socket should treat the next request processed like a keep-alive connection - i.e. one where there may not be any data to process. |
protected String |
localAddr
The local Host address. |
protected String |
localName
Local Host associated with the current connection. |
protected int |
localPort
Local port to which the socket is connected |
protected int |
maxKeepAliveRequests
Maximum number of Keep-Alive requests to honor. |
protected int |
maxSavePostSize
Max saved post size. |
protected Pattern |
noCompressionUserAgents
Regular expression that defines the user agents to not use gzip with |
protected boolean |
openSocket
Flag used to indicate that the socket should be kept open (e.g. for keep alive or send file. |
protected boolean |
readComplete
Flag that indicates if the request headers have been completely read. |
protected String |
remoteAddr
Remote Address associated with the current connection. |
protected String |
remoteHost
Remote Host associated with the current connection. |
protected int |
remotePort
Remote port to which the socket is connected |
protected Pattern |
restrictedUserAgents
Regular expression that defines the restricted user agents. |
protected boolean |
sendfileInProgress
Flag that indicates that send file processing is in progress and that the socket should not be returned to the poller (where a poller is used). |
protected String |
server
Allow a customized the server header for the tin-foil hat folks. |
protected static StringManager |
sm
The string manager for this package. |
protected int |
socketBuffer
Socket buffering. |
protected UpgradeInbound |
upgradeInbound
Listener to which data available events are passed once the associated connection has completed the HTTP upgrade process. |
Fields inherited from class org.apache.coyote.AbstractProcessor |
---|
adapter, asyncStateMachine, endpoint, request, response |
Constructor Summary | |
---|---|
AbstractHttp11Processor(AbstractEndpoint endpoint)
|
Method Summary | |
---|---|
void |
action(ActionCode actionCode,
Object param)
Send an action to the connector. |
void |
addCompressableMimeType(String mimeType)
Add a mime-type which will be compressible The mime-type String will be exactly matched in the response mime-type header . |
protected boolean |
addInputFilter(InputFilter[] inputFilters,
String encodingName)
Add an input filter to the current request. |
AbstractEndpoint.Handler.SocketState |
asyncDispatch(SocketStatus status)
Process in-progress Servlet 3.0 Async requests. |
protected abstract boolean |
breakKeepAliveLoop(SocketWrapper<S> socketWrapper)
Checks to see if the keep-alive loop should be broken, performing any processing (e.g. sendfile handling) that may have an impact on whether or not the keep-alive loop should be broken. |
protected abstract boolean |
disableKeepAlive()
Processors (currently only HTTP BIO) may elect to disable HTTP keep-alive in some circumstances. |
void |
endRequest()
|
protected int |
findBytes(ByteChunk bc,
byte[] b)
Specialized utility method: find a sequence of lower case bytes inside a ByteChunk. |
String |
getCompression()
Return compression level. |
int |
getConnectionUploadTimeout()
Get the upload timeout. |
boolean |
getDisableUploadTimeout()
Get the flag that controls upload time-outs. |
protected abstract AbstractInputBuffer<S> |
getInputBuffer()
Exposes input buffer to super class to allow better code re-use. |
int |
getKeepAliveTimeout()
Return the number Keep-Alive timeout. |
protected abstract Log |
getLog()
|
int |
getMaxKeepAliveRequests()
Return the number of Keep-Alive requests that we will honor. |
int |
getMaxSavePostSize()
Return the maximum size of a POST which will be buffered in SSL mode. |
protected abstract AbstractOutputBuffer<S> |
getOutputBuffer()
Exposes output buffer to super class to allow better code re-use. |
String |
getServer()
Get the server header name. |
int |
getSocketBuffer()
Get the socket buffer flag. |
UpgradeInbound |
getUpgradeInbound()
|
protected abstract boolean |
handleIncompleteRequestLineRead()
Defines how a connector handles an incomplete request line read. |
protected void |
initializeFilters(int maxTrailerSize)
Initialize standard input and output filters. |
boolean |
isComet()
|
boolean |
isUpgrade()
|
protected void |
parseHost(MessageBytes valueMB)
Parse host. |
protected void |
prepareRequest()
After reading the request headers, we have to setup the request filters. |
protected abstract void |
prepareRequestInternal()
Connector implementation specific request preparation. |
AbstractEndpoint.Handler.SocketState |
process(SocketWrapper<S> socketWrapper)
Process pipelined HTTP requests using the specified input and output streams. |
void |
recycle(boolean isSocketClosing)
|
protected abstract void |
recycleInternal()
|
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. |
protected abstract void |
setCometTimeouts(SocketWrapper<S> socketWrapper)
Provides a mechanism for those connectors (currently only NIO) that need that need to set comet timeouts. |
void |
setCompressableMimeTypes(String compressableMimeTypes)
Set compressable mime-type list List contains users agents separated by ',' : ie: "text/html,text/xml,text/plain" |
void |
setCompressableMimeTypes(String[] compressableMimeTypes)
Set compressible mime-type list (this method is best when used with a large number of connectors, where it would be better to have all of them referenced a single array). |
void |
setCompression(String compression)
Set compression level. |
void |
setCompressionMinSize(int compressionMinSize)
Set Minimum size to trigger compression. |
void |
setConnectionUploadTimeout(int timeout)
Set the upload timeout. |
void |
setDisableUploadTimeout(boolean isDisabled)
Set the flag to control upload time-outs. |
void |
setKeepAliveTimeout(int timeout)
Set the Keep-Alive timeout. |
void |
setMaxKeepAliveRequests(int mkar)
Set the maximum number of Keep-Alive requests to honor. |
void |
setMaxSavePostSize(int msps)
Set the maximum size of a POST which will be buffered in SSL mode. |
void |
setNoCompressionUserAgents(String noCompressionUserAgents)
Set no compression user agent pattern. |
protected abstract void |
setRequestLineReadTimeout()
Configures the timeout to be used for reading the request line. |
void |
setRestrictedUserAgents(String restrictedUserAgents)
Set restricted user agent list (which will downgrade the connector to HTTP/1.0 mode). |
void |
setServer(String server)
Set the server header name. |
void |
setSocketBuffer(int socketBuffer)
Set the socket buffer flag. |
protected abstract void |
setSocketTimeout(int timeout)
Set the socket timeout. |
protected abstract void |
setSocketWrapper(SocketWrapper<S> socketWrapper)
Allows the super class to set the socket wrapper being used. |
protected boolean |
statusDropsConnection(int status)
Determine if we must drop the connection because of the HTTP status code. |
AbstractEndpoint.Handler.SocketState |
upgradeDispatch()
Processes data received on a connection that has been through an HTTP upgrade. |
Methods inherited from class org.apache.coyote.AbstractProcessor |
---|
asyncPostProcess, event, getAdapter, getEndpoint, getExecutor, getRequest, isAsync, setAdapter |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.apache.coyote.Processor |
---|
setSslSupport |
Field Detail |
---|
protected static final StringManager sm
protected boolean error
protected boolean keepAlive
protected boolean openSocket
protected boolean keptAlive
protected boolean sendfileInProgress
protected boolean readComplete
protected boolean http11
protected boolean http09
protected boolean contentDelimitation
protected boolean expectation
protected boolean comet
protected Pattern restrictedUserAgents
protected int maxKeepAliveRequests
protected int keepAliveTimeout
protected String remoteAddr
protected String remoteHost
protected String localName
protected int localPort
protected int remotePort
protected String localAddr
protected int connectionUploadTimeout
protected boolean disableUploadTimeout
protected int compressionLevel
protected int compressionMinSize
protected int socketBuffer
protected int maxSavePostSize
protected Pattern noCompressionUserAgents
protected String[] compressableMimeTypes
protected char[] hostNameC
protected String server
protected UpgradeInbound upgradeInbound
Constructor Detail |
---|
public AbstractHttp11Processor(AbstractEndpoint endpoint)
Method Detail |
---|
protected abstract Log getLog()
public void setCompression(String compression)
public void setCompressionMinSize(int compressionMinSize)
public void setNoCompressionUserAgents(String noCompressionUserAgents)
Pattern
.
ie: "gorilla|desesplorer|tigrus"
public void addCompressableMimeType(String mimeType)
mimeType
- mime-type stringpublic void setCompressableMimeTypes(String[] compressableMimeTypes)
public void setCompressableMimeTypes(String compressableMimeTypes)
public String getCompression()
public void setRestrictedUserAgents(String restrictedUserAgents)
Pattern
.
ie: "gorilla|desesplorer|tigrus"
public void setMaxKeepAliveRequests(int mkar)
public int getMaxKeepAliveRequests()
public void setKeepAliveTimeout(int timeout)
public int getKeepAliveTimeout()
public void setMaxSavePostSize(int msps)
public int getMaxSavePostSize()
public void setDisableUploadTimeout(boolean isDisabled)
public boolean getDisableUploadTimeout()
public void setSocketBuffer(int socketBuffer)
public int getSocketBuffer()
public void setConnectionUploadTimeout(int timeout)
public int getConnectionUploadTimeout()
public void setServer(String server)
public String getServer()
protected int findBytes(ByteChunk bc, byte[] b)
protected boolean statusDropsConnection(int status)
protected abstract void setSocketWrapper(SocketWrapper<S> socketWrapper)
protected abstract AbstractInputBuffer<S> getInputBuffer()
protected abstract AbstractOutputBuffer<S> getOutputBuffer()
protected void initializeFilters(int maxTrailerSize)
protected boolean addInputFilter(InputFilter[] inputFilters, String encodingName)
public final void action(ActionCode actionCode, Object param)
actionCode
- Type of the actionparam
- Action parameterprotected abstract boolean disableKeepAlive()
protected abstract void setRequestLineReadTimeout() throws IOException
IOException
protected abstract boolean handleIncompleteRequestLineRead()
true
if the processor should break out of the
processing loop, otherwise false
.protected abstract void setSocketTimeout(int timeout) throws IOException
IOException
public AbstractEndpoint.Handler.SocketState process(SocketWrapper<S> socketWrapper) throws IOException
process
in interface Processor<S>
process
in class AbstractProcessor<S>
socketWrapper
- Socket from which the HTTP requests will be read
and the HTTP responses will be written.
IOException
- error during an I/O operationprotected void prepareRequest()
protected abstract void prepareRequestInternal()
protected void parseHost(MessageBytes valueMB)
public AbstractEndpoint.Handler.SocketState asyncDispatch(SocketStatus status)
AbstractProcessor
asyncDispatch
in interface Processor<S>
asyncDispatch
in class AbstractProcessor<S>
public boolean isComet()
isComet
in interface Processor<S>
isComet
in class AbstractProcessor<S>
public boolean isUpgrade()
isUpgrade
in interface Processor<S>
isUpgrade
in class AbstractProcessor<S>
public AbstractEndpoint.Handler.SocketState upgradeDispatch() throws IOException
AbstractProcessor
upgradeDispatch
in interface Processor<S>
upgradeDispatch
in class AbstractProcessor<S>
IOException
public UpgradeInbound getUpgradeInbound()
getUpgradeInbound
in interface Processor<S>
getUpgradeInbound
in class AbstractProcessor<S>
protected abstract void resetTimeouts()
protected abstract void setCometTimeouts(SocketWrapper<S> socketWrapper)
public void endRequest()
protected abstract boolean breakKeepAliveLoop(SocketWrapper<S> socketWrapper)
public final void recycle(boolean isSocketClosing)
protected abstract void recycleInternal()
|
Apache Tomcat 7.0.28 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |