- java.lang.Object
-
- org.eclipse.jetty.util.component.AbstractLifeCycle
-
- org.eclipse.jetty.servlet.BaseHolder<T>
-
- Type Parameters:
T- the type of holder
- All Implemented Interfaces:
org.eclipse.jetty.util.component.Dumpable,org.eclipse.jetty.util.component.LifeCycle
- Direct Known Subclasses:
Holder,ListenerHolder
public abstract class BaseHolder<T> extends org.eclipse.jetty.util.component.AbstractLifeCycle implements org.eclipse.jetty.util.component.DumpableAbstractHolder Base class for all servlet-related classes that may be lazily instantiated (eg servlet, filter, listener), and/or require metadata to be held regarding their origin (web.xml, annotation, programmatic api etc).
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener, org.eclipse.jetty.util.component.AbstractLifeCycle.StopException
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedBaseHolder(Source source)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected TcreateInstance()voiddoStart()voiddoStop()java.lang.Stringdump()voiddump(java.lang.Appendable out, java.lang.String indent)java.lang.StringgetClassName()java.lang.Class<? extends T>getHeldClass()protected TgetInstance()jakarta.servlet.ServletContextgetServletContext()ServletHandlergetServletHandler()SourcegetSource()protected voidillegalStateIfContextStarted()voidinitialize()Do any setup necessary after startingbooleanisInstance()voidsetClassName(java.lang.String className)voidsetHeldClass(java.lang.Class<? extends T> held)protected voidsetInstance(T instance)voidsetServletHandler(ServletHandler servletHandler)protected Tunwrap(T component)protected <W> Twrap(T component, java.lang.Class<W> wrapperFunctionType, java.util.function.BiFunction<W,T,T> function)Wrap component using component specific Wrapper Function beans.-
Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
addEventListener, getEventListeners, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeEventListener, setEventListeners, start, stop, toString
-
-
-
-
Constructor Detail
-
BaseHolder
protected BaseHolder(Source source)
-
-
Method Detail
-
getSource
public Source getSource()
-
initialize
public void initialize() throws java.lang.ExceptionDo any setup necessary after starting- Throws:
java.lang.Exception- if unable to initialize
-
doStart
public void doStart() throws java.lang.Exception- Overrides:
doStartin classorg.eclipse.jetty.util.component.AbstractLifeCycle- Throws:
java.lang.Exception
-
doStop
public void doStop() throws java.lang.Exception- Overrides:
doStopin classorg.eclipse.jetty.util.component.AbstractLifeCycle- Throws:
java.lang.Exception
-
getClassName
@ManagedAttribute(value="Class Name", readonly=true) public java.lang.String getClassName()
-
getHeldClass
public java.lang.Class<? extends T> getHeldClass()
-
getServletHandler
public ServletHandler getServletHandler()
- Returns:
- Returns the servletHandler.
-
setServletHandler
public void setServletHandler(ServletHandler servletHandler)
- Parameters:
servletHandler- TheServletHandlerthat will handle requests dispatched to this servlet.
-
setClassName
public void setClassName(java.lang.String className)
- Parameters:
className- The className to set.
-
setHeldClass
public void setHeldClass(java.lang.Class<? extends T> held)
- Parameters:
held- The class to hold
-
illegalStateIfContextStarted
protected void illegalStateIfContextStarted()
-
setInstance
protected void setInstance(T instance)
-
getInstance
protected T getInstance()
-
createInstance
protected T createInstance() throws java.lang.Exception
- Throws:
java.lang.Exception
-
getServletContext
public jakarta.servlet.ServletContext getServletContext()
-
isInstance
public boolean isInstance()
- Returns:
- True if this holder was created for a specific instance.
-
wrap
protected <W> T wrap(T component, java.lang.Class<W> wrapperFunctionType, java.util.function.BiFunction<W,T,T> function)
Wrap component using component specific Wrapper Function beans.- Type Parameters:
W- the "wrapper function" implementation. (eg:ServletHolder.WrapperFunctionorFilterHolder.WrapperFunction, etc)- Parameters:
component- the component to optionally wrapwrapperFunctionType- the bean class type to look for in theServletContextHandlerfunction- the BiFunction to execute for eachwrapperFunctionTypeBean found (passing in the component and component type)- Returns:
- the component that has passed through all Wrapper Function beans found.
-
dump
public void dump(java.lang.Appendable out, java.lang.String indent) throws java.io.IOException- Specified by:
dumpin interfaceorg.eclipse.jetty.util.component.Dumpable- Throws:
java.io.IOException
-
dump
public java.lang.String dump()
- Specified by:
dumpin interfaceorg.eclipse.jetty.util.component.Dumpable
-
-