Package org.eclipse.jgit.http.server
Class GitServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.eclipse.jgit.http.server.glue.MetaServlet
org.eclipse.jgit.http.server.GitServlet
- All Implemented Interfaces:
Serializable
,javax.servlet.Servlet
,javax.servlet.ServletConfig
Handles Git repository access over HTTP.
Applications embedding this servlet should map a directory path within the application to this servlet, for example:
<servlet> <servlet-name>GitServlet</servlet-name> <servlet-class>org.eclipse.jgit.http.server.GitServlet</servlet-class> <init-param> <param-name>base-path</param-name> <param-value>/var/srv/git</param-value> </init-param> <init-param> <param-name>export-all</param-name> <param-value>0</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>GitServlet</servlet-name> <url-pattern>/git/*</url-pattern> </servlet-mapping>
Applications may wish to add additional repository action URLs to this
servlet by taking advantage of its extension from
MetaServlet
. Callers may register
their own URL suffix translations through MetaServlet.serve(String)
, or their
regex translations through MetaServlet.serveRegex(String)
. Each translation
should contain a complete filter pipeline which ends with the HttpServlet
that should handle the requested action.
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addReceivePackFilter
(javax.servlet.Filter filter) Add receive-pack filtervoid
addUploadPackFilter
(javax.servlet.Filter filter) Add upload-pack filtervoid
init
(javax.servlet.ServletConfig config) void
Set AsIsFileServicevoid
Set a custom error handler for git-receive-pack.void
setReceivePackFactory
(ReceivePackFactory<javax.servlet.http.HttpServletRequest> f) Set receive-pack factoryvoid
setRepositoryResolver
(RepositoryResolver<javax.servlet.http.HttpServletRequest> resolver) New servlet configured with a specific resolver.void
Set a custom error handler for git-upload-pack.void
setUploadPackFactory
(UploadPackFactory<javax.servlet.http.HttpServletRequest> f) Set upload-pack factoryMethods inherited from class org.eclipse.jgit.http.server.glue.MetaServlet
destroy, getDelegateFilter, register, serve, serveRegex, service
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
Methods inherited from class javax.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
gitFilter
-
-
Constructor Details
-
GitServlet
public GitServlet()New servlet that will load its base directory fromweb.xml
.The required parameter
base-path
must be configured to point to the local filesystem directory where all served Git repositories reside.
-
-
Method Details
-
setRepositoryResolver
public void setRepositoryResolver(RepositoryResolver<javax.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-path
parameter will be looked for in the parameter table during init, which usually comes from theweb.xml
file of the web application.
-
setAsIsFileService
Set AsIsFileService- Parameters:
f
- the filter to validate direct access to repository files through a dumb client. Ifnull
then dumb client support is completely disabled.
-
setUploadPackFactory
Set upload-pack factory- Parameters:
f
- the factory to construct and configure anUploadPack
session 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.9.1
-
addUploadPackFilter
public void addUploadPackFilter(javax.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
Set receive-pack factory- Parameters:
f
- the factory to construct and configure aReceivePack
session 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.9.1
-
addReceivePackFilter
public void addReceivePackFilter(javax.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(javax.servlet.ServletConfig config) throws javax.servlet.ServletException - Specified by:
init
in interfacejavax.servlet.Servlet
- Overrides:
init
in classMetaServlet
- Throws:
javax.servlet.ServletException
-