Class MetaServlet
- java.lang.Object
-
- javax.servlet.GenericServlet
-
- javax.servlet.http.HttpServlet
-
- org.eclipse.jgit.http.server.glue.MetaServlet
-
- All Implemented Interfaces:
Serializable
,javax.servlet.Servlet
,javax.servlet.ServletConfig
- Direct Known Subclasses:
GitServlet
public class MetaServlet extends javax.servlet.http.HttpServlet
Generic container servlet to manage routing to different pipelines.Callers can create and configure a new processing pipeline by using one of the
serve(String)
orserveRegex(String)
methods to allocate a binder for a particular URL pattern.Registered filters and servlets are initialized lazily, usually during the first request. Once initialized the bindings in this servlet cannot be modified without destroying the servlet and thereby destroying all registered filters and servlets.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description MetaServlet()
Empty servlet with no bindings.protected
MetaServlet(MetaFilter delegateFilter)
Initialize a servlet wrapping a filter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
destroy()
protected MetaFilter
getDelegateFilter()
Get delegate filtervoid
init(javax.servlet.ServletConfig config)
protected ServletBinder
register(ServletBinder b)
Configure a newly created binder.ServletBinder
serve(String path)
Construct a binding for a specific path.ServletBinder
serveRegex(String expression)
Construct a binding for a regular expression.protected void
service(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res)
-
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
-
-
-
-
Constructor Detail
-
MetaServlet
public MetaServlet()
Empty servlet with no bindings.
-
MetaServlet
protected MetaServlet(MetaFilter delegateFilter)
Initialize a servlet wrapping a filter.- Parameters:
delegateFilter
- the filter being wrapped by the servlet.
-
-
Method Detail
-
getDelegateFilter
protected MetaFilter getDelegateFilter()
Get delegate filter- Returns:
- filter this servlet delegates all routing logic to.
-
serve
public ServletBinder serve(String path)
Construct a binding for a specific path.- Parameters:
path
- pattern to match.- Returns:
- binder for the passed path.
-
serveRegex
public ServletBinder serveRegex(String expression)
Construct a binding for a regular expression.- Parameters:
expression
- the regular expression to pattern match the URL against.- Returns:
- binder for the passed expression.
-
init
public void init(javax.servlet.ServletConfig config) throws javax.servlet.ServletException
- Specified by:
init
in interfacejavax.servlet.Servlet
- Overrides:
init
in classjavax.servlet.GenericServlet
- Throws:
javax.servlet.ServletException
-
destroy
public void destroy()
- Specified by:
destroy
in interfacejavax.servlet.Servlet
- Overrides:
destroy
in classjavax.servlet.GenericServlet
-
service
protected void service(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res) throws javax.servlet.ServletException, IOException
- Overrides:
service
in classjavax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
IOException
-
register
protected ServletBinder register(ServletBinder b)
Configure a newly created binder.- Parameters:
b
- the newly created binder.- Returns:
- binder for the caller, potentially after adding one or more filters into the pipeline.
-
-