Package org.eclipse.jgit.http.server
Class GitFilter
java.lang.Object
org.eclipse.jgit.http.server.glue.MetaFilter
org.eclipse.jgit.http.server.GitFilter
- All Implemented Interfaces:
jakarta.servlet.Filter
Handles Git repository access over HTTP.
Applications embedding this filter should map a directory path within the
application to this filter. For a servlet version, see
GitServlet.
Applications may wish to add additional repository action URLs to this
servlet by taking advantage of its extension from
MetaFilter. Callers may register
their own URL suffix translations through MetaFilter.serve(String), or their
regex translations through MetaFilter.serveRegex(String). Each translation
should contain a complete filter pipeline which ends with the HttpServlet
that should handle the requested action.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddReceivePackFilter(jakarta.servlet.Filter filter) Add receive-pack filtervoidaddUploadPackFilter(jakarta.servlet.Filter filter) Add upload-pack filtervoidinit(jakarta.servlet.FilterConfig filterConfig) protected ServletBinderregister(ServletBinder binder) Configure a newly created binder.voidSet AsIsFileServicevoidSet a custom error handler for git-receive-pack.voidsetReceivePackFactory(org.eclipse.jgit.transport.resolver.ReceivePackFactory<jakarta.servlet.http.HttpServletRequest> f) Set the receive-pack factoryvoidsetRepositoryResolver(org.eclipse.jgit.transport.resolver.RepositoryResolver<jakarta.servlet.http.HttpServletRequest> resolver) New servlet configured with a specific resolver.voidSet a custom error handler for git-upload-pack.voidsetUploadPackFactory(org.eclipse.jgit.transport.resolver.UploadPackFactory<jakarta.servlet.http.HttpServletRequest> f) Set upload-pack factoryMethods inherited from class org.eclipse.jgit.http.server.glue.MetaFilter
destroy, doFilter, serve, serveRegex, serveRegex
-
Constructor Details
-
GitFilter
public GitFilter()New servlet that will load its base directory fromweb.xml.The required parameter
base-pathmust be configured to point to the local filesystem directory where all served Git repositories reside.
-
-
Method Details
-
setRepositoryResolver
public void setRepositoryResolver(org.eclipse.jgit.transport.resolver.RepositoryResolver<jakarta.servlet.http.HttpServletRequest> resolver) New servlet configured with a specific resolver.- Parameters:
resolver- the resolver to use when matching URL to Git repository. If null thebase-pathparameter will be looked for in the parameter table during init, which usually comes from theweb.xmlfile of the web application.
-
setAsIsFileService
Set AsIsFileService- Parameters:
f- the filter to validate direct access to repository files through a dumb client. Ifnullthen dumb client support is completely disabled.
-
setUploadPackFactory
public void setUploadPackFactory(org.eclipse.jgit.transport.resolver.UploadPackFactory<jakarta.servlet.http.HttpServletRequest> f) Set upload-pack factory- Parameters:
f- the factory to construct and configure anUploadPacksession when a fetch or clone is requested by a client.
-
setUploadPackErrorHandler
Set a custom error handler for git-upload-pack.- Parameters:
h- A custom error handler for git-upload-pack.- Since:
- 5.6
-
addUploadPackFilter
public void addUploadPackFilter(jakarta.servlet.Filter filter) Add upload-pack filter- Parameters:
filter- filter to apply before any of the UploadPack operations. The UploadPack instance is available in the request attributeServletUtils.ATTRIBUTE_HANDLER.
-
setReceivePackFactory
public void setReceivePackFactory(org.eclipse.jgit.transport.resolver.ReceivePackFactory<jakarta.servlet.http.HttpServletRequest> f) Set the receive-pack factory- Parameters:
f- the factory to construct and configure aReceivePacksession when a push is requested by a client.
-
setReceivePackErrorHandler
Set a custom error handler for git-receive-pack.- Parameters:
h- A custom error handler for git-receive-pack.- Since:
- 5.7
-
addReceivePackFilter
public void addReceivePackFilter(jakarta.servlet.Filter filter) Add receive-pack filter- Parameters:
filter- filter to apply before any of the ReceivePack operations. The ReceivePack instance is available in the request attributeServletUtils.ATTRIBUTE_HANDLER.
-
init
public void init(jakarta.servlet.FilterConfig filterConfig) throws jakarta.servlet.ServletException - Specified by:
initin interfacejakarta.servlet.Filter- Overrides:
initin classMetaFilter- Throws:
jakarta.servlet.ServletException
-
register
Description copied from class:MetaFilterConfigure a newly created binder.- Overrides:
registerin classMetaFilter- Parameters:
binder- the newly created binder.- Returns:
- binder for the caller, potentially after adding one or more filters into the pipeline.
-