public final class RequestHeaderRequestMatcher extends Object implements RequestMatcher
RequestMatcher
that can be used to match request that contain a header with
an expected header name and an expected value.
For example, the following will match an request that contains a header with the name X-Requested-With no matter what the value is.
RequestMatcher matcher = new RequestHeaderRequestMatcher("X-Requested-With");Alternatively, the RequestHeaderRequestMatcher can be more precise and require a specific value. For example the following will match on requests with the header name of X-Requested-With with the value of "XMLHttpRequest", but will not match on header name of "X-Requested-With" with the value of "Other".
RequestMatcher matcher = new RequestHeaderRequestMatcher("X-Requested-With", "XMLHttpRequest");The value used to compare is the first header value, so in the previous example if the header "X-Requested-With" contains the values "Other" and "XMLHttpRequest", then it will not match.
Constructor and Description |
---|
RequestHeaderRequestMatcher(String expectedHeaderName)
Creates a new instance that will match if a header by the name of
expectedHeaderName is present. |
RequestHeaderRequestMatcher(String expectedHeaderName,
String expectedHeaderValue)
Creates a new instance that will match if a header by the name of
expectedHeaderName is present and if the expectedHeaderValue is
non-null the first value is the same. |
Modifier and Type | Method and Description |
---|---|
boolean |
matches(javax.servlet.http.HttpServletRequest request)
Decides whether the rule implemented by the strategy matches the supplied request.
|
String |
toString() |
public RequestHeaderRequestMatcher(String expectedHeaderName)
expectedHeaderName
is present. In this instance, the value does not
matter.expectedHeaderName
- the name of the expected header that if present the
request will match. Cannot be null.public RequestHeaderRequestMatcher(String expectedHeaderName, String expectedHeaderValue)
expectedHeaderName
is present and if the expectedHeaderValue
is
non-null the first value is the same.expectedHeaderName
- the name of the expected header. Cannot be nullexpectedHeaderValue
- the expected header value or null if the value does not
matterpublic boolean matches(javax.servlet.http.HttpServletRequest request)
RequestMatcher
matches
in interface RequestMatcher
request
- the request to check for a match