Class TagHandlerPool


  • public class TagHandlerPool
    extends java.lang.Object
    Pool of tag handlers that can be reused.
    • Constructor Summary

      Constructors 
      Constructor Description
      TagHandlerPool()
      Constructs a tag handler pool with the default capacity.
      TagHandlerPool​(int capacity)
      Deprecated.
      Use static getTagHandlerPool
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      <T extends javax.servlet.jsp.tagext.JspTag>
      javax.servlet.jsp.tagext.JspTag
      get​(java.lang.Class<T> handlerClass)
      Gets the next available tag handler from this tag handler pool, instantiating one if this tag handler pool is empty.
      protected static java.lang.String getOption​(javax.servlet.ServletConfig config, java.lang.String name, java.lang.String defaultV)  
      static TagHandlerPool getTagHandlerPool​(javax.servlet.ServletConfig config)  
      protected void init​(javax.servlet.ServletConfig config)  
      void release()
      Calls the release() method of all available tag handlers in this tag handler pool.
      void reuse​(javax.servlet.jsp.tagext.JspTag handler)
      Adds the given tag handler to this tag handler pool, unless this tag handler pool has already reached its capacity, in which case the tag handler's release() method is called.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • handlers

        private javax.servlet.jsp.tagext.JspTag[] handlers
      • current

        private int current
    • Constructor Detail

      • TagHandlerPool

        public TagHandlerPool()
        Constructs a tag handler pool with the default capacity.
      • TagHandlerPool

        public TagHandlerPool​(int capacity)
        Deprecated.
        Use static getTagHandlerPool
        Constructs a tag handler pool with the given capacity.
        Parameters:
        capacity - Tag handler pool capacity
    • Method Detail

      • getTagHandlerPool

        public static TagHandlerPool getTagHandlerPool​(javax.servlet.ServletConfig config)
      • init

        protected void init​(javax.servlet.ServletConfig config)
      • get

        public <T extends javax.servlet.jsp.tagext.JspTag> javax.servlet.jsp.tagext.JspTag get​(java.lang.Class<T> handlerClass)
                                                                                        throws javax.servlet.jsp.JspException
        Gets the next available tag handler from this tag handler pool, instantiating one if this tag handler pool is empty.
        Parameters:
        handlerClass - Tag handler class
        Returns:
        Reused or newly instantiated tag handler
        Throws:
        javax.servlet.jsp.JspException - if a tag handler cannot be instantiated
      • reuse

        public void reuse​(javax.servlet.jsp.tagext.JspTag handler)
        Adds the given tag handler to this tag handler pool, unless this tag handler pool has already reached its capacity, in which case the tag handler's release() method is called.
        Parameters:
        handler - JspTag handler to add to this tag handler pool
      • release

        public void release()
        Calls the release() method of all available tag handlers in this tag handler pool.
      • getOption

        protected static java.lang.String getOption​(javax.servlet.ServletConfig config,
                                                    java.lang.String name,
                                                    java.lang.String defaultV)