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:
java.io.Serializable,javax.servlet.Servlet,javax.servlet.ServletConfig
public class GitServlet extends MetaServlet
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 throughMetaServlet.serve(String), or their regex translations throughMetaServlet.serveRegex(String). Each translation should contain a complete filter pipeline which ends with the HttpServlet that should handle the requested action.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private GitFiltergitFilterprivate static longserialVersionUID
-
Constructor Summary
Constructors Constructor Description GitServlet()New servlet that will load its base directory fromweb.xml.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddReceivePackFilter(javax.servlet.Filter filter)Add receive-pack filtervoidaddUploadPackFilter(javax.servlet.Filter filter)Add upload-pack filtervoidinit(javax.servlet.ServletConfig config)voidsetAsIsFileService(AsIsFileService f)Set AsIsFileServicevoidsetReceivePackFactory(ReceivePackFactory<javax.servlet.http.HttpServletRequest> f)Set receive-pack factoryvoidsetRepositoryResolver(RepositoryResolver<javax.servlet.http.HttpServletRequest> resolver)New servlet configured with a specific resolver.voidsetUploadPackFactory(UploadPackFactory<javax.servlet.http.HttpServletRequest> f)Set upload-pack factory-
Methods 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
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
gitFilter
private final GitFilter gitFilter
-
-
Method Detail
-
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-pathparameter will be looked for in the parameter table during init, which usually comes from theweb.xmlfile of the web application.
-
setAsIsFileService
public void setAsIsFileService(AsIsFileService f)
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(UploadPackFactory<javax.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.
-
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
public void setReceivePackFactory(ReceivePackFactory<javax.servlet.http.HttpServletRequest> f)
Set receive-pack factory- Parameters:
f- the factory to construct and configure aReceivePacksession when a push is requested by a client.
-
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:
initin interfacejavax.servlet.Servlet- Overrides:
initin classMetaServlet- Throws:
javax.servlet.ServletException
-
-