public class RepositoryFilter
extends java.lang.Object
implements javax.servlet.Filter
RepositoryResolver
.
This filter assumes it is invoked by
GitServlet
and is likely to not work as
expected if called from any other class. This filter assumes the path info of
the current request is a repository name which can be used by the configured
RepositoryResolver
to open a
Repository
and attach it to the current request.
This filter sets request attribute
ServletUtils.ATTRIBUTE_REPOSITORY
when
it discovers the repository, and automatically closes and removes the
attribute when the request is complete.
Modifier and Type | Field and Description |
---|---|
private javax.servlet.ServletContext |
context |
private RepositoryResolver<javax.servlet.http.HttpServletRequest> |
resolver |
Constructor and Description |
---|
RepositoryFilter(RepositoryResolver<javax.servlet.http.HttpServletRequest> resolver)
Create a new filter.
|
Modifier and Type | Method and Description |
---|---|
void |
destroy() |
void |
doFilter(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
javax.servlet.FilterChain chain) |
void |
init(javax.servlet.FilterConfig config) |
private final RepositoryResolver<javax.servlet.http.HttpServletRequest> resolver
private javax.servlet.ServletContext context
public RepositoryFilter(RepositoryResolver<javax.servlet.http.HttpServletRequest> resolver)
resolver
- the resolver which will be used to translate the URL name
component to the actual
Repository
instance for the
current web request.public void init(javax.servlet.FilterConfig config) throws javax.servlet.ServletException
init
in interface javax.servlet.Filter
javax.servlet.ServletException
public void destroy()
destroy
in interface javax.servlet.Filter
public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws java.io.IOException, javax.servlet.ServletException
doFilter
in interface javax.servlet.Filter
java.io.IOException
javax.servlet.ServletException