The RequestFilter interface is designed to be used by filters that need to process the contents of HTTP request headers. Based on the Filter interface, RequestFilter also provides a new method called filter(). This filter() method is passed a Request object which is generated by the Handler to represent the request received from an HTTP client. Any changes made by the filter to the Request object will be reflected in the resulting HTTP request sent to the web server. Figure 4.6 shows the Java code for the RequestFilter interface.