org.apache.coyote.http11
public class Http11Processor extends Object implements ActionHook
Field Summary | |
---|---|
protected Adapter | adapter
Associated adapter. |
protected String[] | compressableMimeTypes
List of MIMES which could be gzipped |
protected int | compressionLevel
Allowed compression level. |
protected int | compressionMinSize
Minimum contentsize to make compression. |
protected boolean | contentDelimitation
Content delimitator 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 JIoEndpoint | endpoint
Associated endpoint. |
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 InternalInputBuffer | inputBuffer
Input. |
protected static boolean | isSecurityEnabled |
protected boolean | keepAlive
Keep-alive. |
protected int | keepAliveTimeout
The number of seconds Tomcat will wait for a subsequent request
before closing the connection. |
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 static Log | log
Logger. |
protected int | maxKeepAliveRequests
Maximum number of Keep-Alive requests to honor. |
protected int | maxSavePostSize
Max saved post size. |
protected Pattern[] | noCompressionUserAgents
List of user agents to not use gzip with |
protected InternalOutputBuffer | outputBuffer
Output. |
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 Request | request
Request object. |
protected Response | response
Response object. |
protected Pattern[] | restrictedUserAgents
List of restricted user agents. |
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 Socket | socket
Socket associated with the current connection. |
protected int | socketBuffer
Socket buffering. |
protected SSLSupport | sslSupport
SSL information. |
protected boolean | started
State flag. |
protected int | timeout
Maximum timeout on uploads. |
Constructor Summary | |
---|---|
Http11Processor(int headerBufferSize, JIoEndpoint 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 compressable
The mime-type String will be exactly matched
in the response mime-type header .
|
protected void | addFilter(String className)
Add input or output filter.
|
protected boolean | addInputFilter(InputFilter[] inputFilters, String encodingName)
Add an input filter to the current request.
|
void | addNoCompressionUserAgent(String userAgent)
Add user-agent for which gzip compression didn't works
The user agent String given will be exactly matched
to the user-agent header submitted by the client.
|
void | addRestrictedUserAgent(String userAgent)
Add restricted user-agent (which will downgrade the connector
to HTTP/1.0 mode). |
protected int | findBytes(ByteChunk bc, byte[] b)
Specialized utility method: find a sequence of lower case bytes inside
a ByteChunk. |
String[] | findCompressableMimeTypes()
Return the list of restricted user agents. |
String[] | findRestrictedUserAgents()
Return the list of restricted user agents. |
Adapter | getAdapter()
Get the associated adapter.
|
String | getCompression()
Return compression level. |
boolean | getDisableUploadTimeout()
Get the flag that controls upload time-outs. |
int | getKeepAliveTimeout()
Return the number Keep-Alive timeout. |
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. |
Request | getRequest() Get the request associated with this processor.
|
String | getServer()
Get the server header name. |
int | getSocketBuffer()
Get the socket buffer flag. |
int | getTimeout()
Get the upload timeout. |
protected void | initializeFilters()
Initialize standard input and output filters. |
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. |
void | process(Socket theSocket)
Process pipelined HTTP requests on the specified socket.
|
void | setAdapter(Adapter adapter)
Set the associated adapter.
|
void | setCompressableMimeTypes(String[] compressableMimeTypes)
Set compressable 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 | setCompressableMimeTypes(String compressableMimeTypes)
Set compressable mime-type list
List contains users agents separated by ',' :
ie: "text/html,text/xml,text/plain" |
void | setCompression(String compression)
Set compression level. |
void | setCompressionMinSize(int compressionMinSize)
Set Minimum size to trigger compression. |
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(Pattern[] noCompressionUserAgents)
Set no compression user agent 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 | setNoCompressionUserAgents(String noCompressionUserAgents)
Set no compression user agent list.
|
void | setRestrictedUserAgents(Pattern[] restrictedUserAgents)
Set restricted user agent 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 | 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. |
void | setSSLSupport(SSLSupport sslSupport)
Set the SSL information for this HTTP connection. |
void | setTimeout(int timeouts)
Set the upload timeout. |
protected boolean | statusDropsConnection(int status)
Determine if we must drop the connection because of the HTTP status
code. |
Parameters: actionCode Type of the action param Action parameter
Parameters: mimeType mime-type string
Parameters: className class name of the filter
Returns: false if the encoding was not found (which would mean it is unsupported)
Parameters: userAgent user-agent string
Parameters: userAgent user-agent string
Returns: the associated adapter
Returns: The request
Parameters: socket Socket from which the HTTP requests will be read and the HTTP responses will be written.
Throws: IOException error during an I/O operation
Parameters: adapter the new adapter