Class BaseHolder<T>

  • Type Parameters:
    T - the type of holder
    All Implemented Interfaces:
    Dumpable, LifeCycle
    Direct Known Subclasses:
    Holder, ListenerHolder

    public abstract class BaseHolder<T>
    extends AbstractLifeCycle
    implements Dumpable
    AbstractHolder 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).
    • Field Detail

      • _source

        protected final Source _source
      • _class

        protected transient java.lang.Class<? extends T> _class
      • _className

        protected java.lang.String _className
      • _extInstance

        protected boolean _extInstance
    • Constructor Detail

      • BaseHolder

        protected BaseHolder​(Source source)
    • Method Detail

      • getSource

        public Source getSource()
      • initialize

        public void initialize()
                        throws java.lang.Exception
        Do any setup necessary after starting
        Throws:
        java.lang.Exception - if unable to initialize
      • doStart

        public void doStart()
                     throws java.lang.Exception
        Overrides:
        doStart in class AbstractLifeCycle
        Throws:
        java.lang.Exception
      • doStop

        public void doStop()
                    throws java.lang.Exception
        Overrides:
        doStop in class AbstractLifeCycle
        Throws:
        java.lang.Exception
      • getHeldClass

        public java.lang.Class<? extends T> getHeldClass()
      • getServletHandler

        public ServletHandler getServletHandler()
        Returns:
        Returns the servletHandler.
      • setServletHandler

        public void setServletHandler​(ServletHandler servletHandler)
        Parameters:
        servletHandler - The ServletHandler that 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()
      • isInstance

        public boolean isInstance()
        Returns:
        True if this holder was created for a specific instance.
      • dump

        public void dump​(java.lang.Appendable out,
                         java.lang.String indent)
                  throws java.io.IOException
        Description copied from interface: Dumpable
        Dump this object (and children) into an Appendable using the provided indent after any new lines. The indent should not be applied to the first object dumped.
        Specified by:
        dump in interface Dumpable
        Parameters:
        out - The appendable to dump to
        indent - The indent to apply after any new lines.
        Throws:
        java.io.IOException - if unable to write to Appendable
      • dump

        public java.lang.String dump()
        Specified by:
        dump in interface Dumpable