|
|||||||||
| Home >> All >> org >> apache >> coyote >> [ http11 overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
org.apache.coyote.http11
Class Http11Processor

java.lang.Objectorg.apache.coyote.http11.Http11Processor
- All Implemented Interfaces:
- org.apache.coyote.ActionHook, org.apache.coyote.Processor
- public class Http11Processor
- extends java.lang.Object
- implements org.apache.coyote.Processor, org.apache.coyote.ActionHook
- extends java.lang.Object
Processes HTTP requests.
| Field Summary | |
protected org.apache.coyote.Adapter |
adapter
Associated adapter. |
protected java.lang.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 org.apache.tomcat.util.net.PoolTcpEndpoint |
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 boolean |
keepAlive
Keep-alive. |
protected java.lang.String |
localAddr
The local Host address. |
protected java.lang.String |
localName
Local Host associated with the current connection. |
protected int |
localPort
Local port to which the socket is connected |
protected static org.apache.commons.logging.Log |
log
Logger. |
protected int |
maxKeepAliveRequests
Maximum number of Keep-Alive requests to honor. |
protected int |
maxSavePostSize
Max saved post size. |
protected java.util.regex.Pattern[] |
noCompressionUserAgents
List of user agents to not use gzip with |
protected InternalOutputBuffer |
outputBuffer
Output. |
protected java.lang.String |
remoteAddr
Remote Address associated with the current connection. |
protected java.lang.String |
remoteHost
Remote Host associated with the current connection. |
protected int |
remotePort
Remote port to which the socket is connected |
protected org.apache.coyote.Request |
request
Request object. |
protected org.apache.coyote.Response |
response
Response object. |
protected java.util.regex.Pattern[] |
restrictedUserAgents
List of restricted user agents. |
protected java.lang.String |
server
Allow a customized the server header for the tin-foil hat folks. |
protected static org.apache.tomcat.util.res.StringManager |
sm
The string manager for this package. |
protected java.net.Socket |
socket
Socket associated with the current connection. |
protected int |
socketBuffer
Socket buffering. |
protected org.apache.tomcat.util.net.SSLSupport |
sslSupport
SSL information. |
protected boolean |
started
State flag. |
protected org.apache.tomcat.util.threads.ThreadPool |
threadPool
Associated thread pool. |
protected int |
timeout
Maximum timeout on uploads. |
| Constructor Summary | |
Http11Processor()
Default constructor. |
|
Http11Processor(int headerBufferSize)
|
|
| Method Summary | |
void |
action(org.apache.coyote.ActionCode actionCode,
java.lang.Object param)
Send an action to the connector. |
void |
addCompressableMimeType(java.lang.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(java.lang.String className)
Add input or output filter. |
protected boolean |
addInputFilter(InputFilter[] inputFilters,
java.lang.String encodingName)
Add an input filter to the current request. |
void |
addNoCompressionUserAgent(java.lang.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. |
private java.util.regex.Pattern[] |
addREArray(java.util.regex.Pattern[] rArray,
java.util.regex.Pattern value)
General use method |
void |
addRestrictedUserAgent(java.lang.String userAgent)
Add restricted user-agent (which will downgrade the connector to HTTP/1.0 mode). |
private java.lang.String[] |
addStringArray(java.lang.String[] sArray,
java.lang.String value)
General use method |
protected int |
findBytes(org.apache.tomcat.util.buf.ByteChunk bc,
byte[] b)
Specialized utility method: find a sequence of lower case bytes inside a ByteChunk. |
java.lang.String[] |
findCompressableMimeTypes()
Return the list of restricted user agents. |
java.lang.String[] |
findRestrictedUserAgents()
Return the list of restricted user agents. |
org.apache.coyote.Adapter |
getAdapter()
Get the associated adapter. |
java.lang.String |
getCompression()
Return compression level. |
boolean |
getDisableUploadTimeout()
Get the flag that controls upload time-outs. |
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. |
org.apache.coyote.Request |
getRequest()
Get the request associated with this processor. |
java.lang.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. |
private boolean |
inStringArray(java.lang.String[] sArray,
java.lang.String value)
General use method |
private boolean |
isCompressable()
Check for compression |
void |
parseHost(org.apache.tomcat.util.buf.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(java.io.InputStream input,
java.io.OutputStream output)
Process pipelined HTTP requests using the specified input and output streams. |
void |
setAdapter(org.apache.coyote.Adapter adapter)
Set the associated adapter. |
void |
setCompressableMimeTypes(java.lang.String compressableMimeTypes)
Set compressable mime-type list List contains users agents separated by ',' : ie: "text/html,text/xml,text/plain" |
void |
setCompressableMimeTypes(java.lang.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 |
setCompression(java.lang.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 |
setEndpoint(org.apache.tomcat.util.net.PoolTcpEndpoint endpoint)
|
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(java.util.regex.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(java.lang.String noCompressionUserAgents)
Set no compression user agent list. |
void |
setRestrictedUserAgents(java.util.regex.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(java.lang.String restrictedUserAgents)
Set restricted user agent list (which will downgrade the connector to HTTP/1.0 mode). |
void |
setServer(java.lang.String server)
Set the server header name. |
void |
setSocket(java.net.Socket socket)
Set the socket associated with this HTTP connection. |
void |
setSocketBuffer(int socketBuffer)
Set the socket buffer flag. |
void |
setSSLSupport(org.apache.tomcat.util.net.SSLSupport sslSupport)
Set the SSL information for this HTTP connection. |
void |
setThreadPool(org.apache.tomcat.util.threads.ThreadPool threadPool)
|
void |
setTimeout(int timeouts)
Set the upload timeout. |
private boolean |
startsWithStringArray(java.lang.String[] sArray,
java.lang.String value)
Checks if any entry in the string array starts with the specified value |
protected boolean |
statusDropsConnection(int status)
Determine if we must drop the connection because of the HTTP status code. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
log
protected static org.apache.commons.logging.Log log
- Logger.
sm
protected static org.apache.tomcat.util.res.StringManager sm
- The string manager for this package.
adapter
protected org.apache.coyote.Adapter adapter
- Associated adapter.
request
protected org.apache.coyote.Request request
- Request object.
response
protected org.apache.coyote.Response response
- Response object.
inputBuffer
protected InternalInputBuffer inputBuffer
- Input.
outputBuffer
protected InternalOutputBuffer outputBuffer
- Output.
started
protected boolean started
- State flag.
error
protected boolean error
- Error flag.
keepAlive
protected boolean keepAlive
- Keep-alive.
http11
protected boolean http11
- HTTP/1.1 flag.
http09
protected boolean http09
- HTTP/0.9 flag.
contentDelimitation
protected boolean contentDelimitation
- Content delimitator for the request (if false, the connection will
be closed at the end of the request).
expectation
protected boolean expectation
- Is there an expectation ?
restrictedUserAgents
protected java.util.regex.Pattern[] restrictedUserAgents
- List of restricted user agents.
maxKeepAliveRequests
protected int maxKeepAliveRequests
- Maximum number of Keep-Alive requests to honor.
sslSupport
protected org.apache.tomcat.util.net.SSLSupport sslSupport
- SSL information.
socket
protected java.net.Socket socket
- Socket associated with the current connection.
remoteAddr
protected java.lang.String remoteAddr
- Remote Address associated with the current connection.
remoteHost
protected java.lang.String remoteHost
- Remote Host associated with the current connection.
localName
protected java.lang.String localName
- Local Host associated with the current connection.
localPort
protected int localPort
- Local port to which the socket is connected
remotePort
protected int remotePort
- Remote port to which the socket is connected
localAddr
protected java.lang.String localAddr
- The local Host address.
timeout
protected int timeout
- Maximum timeout on uploads. 5 minutes as in Apache HTTPD server.
disableUploadTimeout
protected boolean disableUploadTimeout
- Flag to disable setting a different time-out on uploads.
compressionLevel
protected int compressionLevel
- Allowed compression level.
compressionMinSize
protected int compressionMinSize
- Minimum contentsize to make compression.
socketBuffer
protected int socketBuffer
- Socket buffering.
maxSavePostSize
protected int maxSavePostSize
- Max saved post size.
noCompressionUserAgents
protected java.util.regex.Pattern[] noCompressionUserAgents
- List of user agents to not use gzip with
compressableMimeTypes
protected java.lang.String[] compressableMimeTypes
- List of MIMES which could be gzipped
hostNameC
protected char[] hostNameC
- Host name (used to avoid useless B2C conversion on the host name).
threadPool
protected org.apache.tomcat.util.threads.ThreadPool threadPool
- Associated thread pool.
endpoint
protected org.apache.tomcat.util.net.PoolTcpEndpoint endpoint
- Associated endpoint.
server
protected java.lang.String server
- Allow a customized the server header for the tin-foil hat folks.
| Constructor Detail |
Http11Processor
public Http11Processor()
- Default constructor.
Http11Processor
public Http11Processor(int headerBufferSize)
| Method Detail |
getCompression
public java.lang.String getCompression()
- Return compression level.
setCompression
public void setCompression(java.lang.String compression)
- Set compression level.
setCompressionMinSize
public void setCompressionMinSize(int compressionMinSize)
- Set Minimum size to trigger compression.
setThreadPool
public void setThreadPool(org.apache.tomcat.util.threads.ThreadPool threadPool)
setEndpoint
public void setEndpoint(org.apache.tomcat.util.net.PoolTcpEndpoint endpoint)
addNoCompressionUserAgent
public void addNoCompressionUserAgent(java.lang.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.
setNoCompressionUserAgents
public void setNoCompressionUserAgents(java.util.regex.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).
setNoCompressionUserAgents
public void setNoCompressionUserAgents(java.lang.String noCompressionUserAgents)
- Set no compression user agent list.
List contains users agents separated by ',' :
ie: "gorilla,desesplorer,tigrus"
addCompressableMimeType
public void addCompressableMimeType(java.lang.String mimeType)
- Add a mime-type which will be compressable
The mime-type String will be exactly matched
in the response mime-type header .
setCompressableMimeTypes
public void setCompressableMimeTypes(java.lang.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).
setCompressableMimeTypes
public void setCompressableMimeTypes(java.lang.String compressableMimeTypes)
- Set compressable mime-type list
List contains users agents separated by ',' :
ie: "text/html,text/xml,text/plain"
findCompressableMimeTypes
public java.lang.String[] findCompressableMimeTypes()
- Return the list of restricted user agents.
addFilter
protected void addFilter(java.lang.String className)
- Add input or output filter.
addStringArray
private java.lang.String[] addStringArray(java.lang.String[] sArray, java.lang.String value)
- General use method
addREArray
private java.util.regex.Pattern[] addREArray(java.util.regex.Pattern[] rArray, java.util.regex.Pattern value)
- General use method
inStringArray
private boolean inStringArray(java.lang.String[] sArray, java.lang.String value)
- General use method
startsWithStringArray
private boolean startsWithStringArray(java.lang.String[] sArray, java.lang.String value)
- Checks if any entry in the string array starts with the specified value
addRestrictedUserAgent
public void addRestrictedUserAgent(java.lang.String userAgent)
- Add restricted user-agent (which will downgrade the connector
to HTTP/1.0 mode). The user agent String given will be matched
via regexp to the user-agent header submitted by the client.
setRestrictedUserAgents
public void setRestrictedUserAgents(java.util.regex.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).
setRestrictedUserAgents
public void setRestrictedUserAgents(java.lang.String restrictedUserAgents)
- Set restricted user agent list (which will downgrade the connector
to HTTP/1.0 mode). List contains users agents separated by ',' :
ie: "gorilla,desesplorer,tigrus"
findRestrictedUserAgents
public java.lang.String[] findRestrictedUserAgents()
- Return the list of restricted user agents.
setMaxKeepAliveRequests
public void setMaxKeepAliveRequests(int mkar)
- Set the maximum number of Keep-Alive requests to honor.
This is to safeguard from DoS attacks. Setting to a negative
value disables the check.
getMaxKeepAliveRequests
public int getMaxKeepAliveRequests()
- Return the number of Keep-Alive requests that we will honor.
setMaxSavePostSize
public void setMaxSavePostSize(int msps)
- Set the maximum size of a POST which will be buffered in SSL mode.
getMaxSavePostSize
public int getMaxSavePostSize()
- Return the maximum size of a POST which will be buffered in SSL mode.
setSSLSupport
public void setSSLSupport(org.apache.tomcat.util.net.SSLSupport sslSupport)
- Set the SSL information for this HTTP connection.
setSocket
public void setSocket(java.net.Socket socket) throws java.io.IOException
- Set the socket associated with this HTTP connection.
setDisableUploadTimeout
public void setDisableUploadTimeout(boolean isDisabled)
- Set the flag to control upload time-outs.
getDisableUploadTimeout
public boolean getDisableUploadTimeout()
- Get the flag that controls upload time-outs.
setSocketBuffer
public void setSocketBuffer(int socketBuffer)
- Set the socket buffer flag.
getSocketBuffer
public int getSocketBuffer()
- Get the socket buffer flag.
setTimeout
public void setTimeout(int timeouts)
- Set the upload timeout.
getTimeout
public int getTimeout()
- Get the upload timeout.
setServer
public void setServer(java.lang.String server)
- Set the server header name.
getServer
public java.lang.String getServer()
- Get the server header name.
getRequest
public org.apache.coyote.Request getRequest()
- Get the request associated with this processor.
process
public void process(java.io.InputStream input, java.io.OutputStream output) throws java.io.IOException
- Process pipelined HTTP requests using the specified input and output
streams.
- Specified by:
processin interfaceorg.apache.coyote.Processor
action
public void action(org.apache.coyote.ActionCode actionCode, java.lang.Object param)
- Send an action to the connector.
- Specified by:
actionin interfaceorg.apache.coyote.ActionHook
setAdapter
public void setAdapter(org.apache.coyote.Adapter adapter)
- Set the associated adapter.
- Specified by:
setAdapterin interfaceorg.apache.coyote.Processor
getAdapter
public org.apache.coyote.Adapter getAdapter()
- Get the associated adapter.
- Specified by:
getAdapterin interfaceorg.apache.coyote.Processor
prepareRequest
protected void prepareRequest()
- After reading the request headers, we have to setup the request filters.
parseHost
public void parseHost(org.apache.tomcat.util.buf.MessageBytes valueMB)
- Parse host.
isCompressable
private boolean isCompressable()
- Check for compression
prepareResponse
protected void prepareResponse()
- When committing the response, we have to validate the set of headers, as
well as setup the response filters.
initializeFilters
protected void initializeFilters()
- Initialize standard input and output filters.
addInputFilter
protected boolean addInputFilter(InputFilter[] inputFilters, java.lang.String encodingName)
- Add an input filter to the current request.
findBytes
protected int findBytes(org.apache.tomcat.util.buf.ByteChunk bc, byte[] b)
- Specialized utility method: find a sequence of lower case bytes inside
a ByteChunk.
statusDropsConnection
protected boolean statusDropsConnection(int status)
- Determine if we must drop the connection because of the HTTP status
code. Use the same list of codes as Apache/httpd.
|
|||||||||
| Home >> All >> org >> apache >> coyote >> [ http11 overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
JAVADOC
org.apache.coyote.http11.Http11Processor