class FilterChainInvocation
extends java.lang.Object
implements javax.servlet.FilterChain
doFilter()
. Modeled on something similar in Apache Tomcat.
Following this, it attempts to dispatch to guice-servlet's registered servlets using the
ManagedServletPipeline.
And the end, it proceeds to the web.xml (default) servlet filter chain, if needed.Modifier and Type | Field and Description |
---|---|
private boolean |
cleanedStacks |
private FilterDefinition[] |
filterDefinitions |
private int |
index |
private javax.servlet.FilterChain |
proceedingChain |
private static java.util.Set<java.lang.String> |
SERVLET_INTERNAL_METHODS |
private ManagedServletPipeline |
servletPipeline |
Constructor and Description |
---|
FilterChainInvocation(FilterDefinition[] filterDefinitions,
ManagedServletPipeline servletPipeline,
javax.servlet.FilterChain proceedingChain) |
Modifier and Type | Method and Description |
---|---|
void |
doFilter(javax.servlet.ServletRequest servletRequest,
javax.servlet.ServletResponse servletResponse) |
private javax.servlet.Filter |
findNextFilter(javax.servlet.http.HttpServletRequest request)
Iterates over the remaining filter definitions.
|
private void |
pruneStacktrace(java.lang.Throwable throwable)
Removes stacktrace elements related to AOP internal mechanics from the
throwable's stack trace and any causes it may have.
|
private static final java.util.Set<java.lang.String> SERVLET_INTERNAL_METHODS
private final FilterDefinition[] filterDefinitions
private final javax.servlet.FilterChain proceedingChain
private final ManagedServletPipeline servletPipeline
private int index
private boolean cleanedStacks
public FilterChainInvocation(FilterDefinition[] filterDefinitions, ManagedServletPipeline servletPipeline, javax.servlet.FilterChain proceedingChain)
public void doFilter(javax.servlet.ServletRequest servletRequest, javax.servlet.ServletResponse servletResponse) throws java.io.IOException, javax.servlet.ServletException
doFilter
in interface javax.servlet.FilterChain
java.io.IOException
javax.servlet.ServletException
private javax.servlet.Filter findNextFilter(javax.servlet.http.HttpServletRequest request)
private void pruneStacktrace(java.lang.Throwable throwable)