Class Taglibs


  • public class Taglibs
    extends java.lang.Object
    Utilities to handle taglib.
    Since:
    3.0.0
    Author:
    tomyeh
    • Constructor Summary

      Constructors 
      Constructor Description
      Taglibs()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.net.URL getDefaultURL​(java.lang.String uri)
      Returns the URL associated with the specified taglib URI, or null if not found.
      static FunctionMapper getFunctionMapper​(java.util.Collection<Taglib> taglibs, java.util.Map<java.lang.String,​java.lang.Class<?>> imports, java.util.Collection<FunctionDefinition> funcs, Locator loc)
      Returns the function mapper representing a collection of Taglib, imports and functions, or null if nothing is loaded.
      static FunctionMapper getFunctionMapper​(java.util.Collection<Taglib> taglibs, java.util.Map<java.lang.String,​java.lang.Class<?>> imports, Locator loc)
      Returns the function mapper representing a collection of Taglib and imports, or null if nothing is loaded.
      static FunctionMapper getFunctionMapper​(java.util.Collection<Taglib> taglibs, Locator loc)
      Returns the function mapper representing a collection of Taglib, or null if nothing is loaded.
      static FunctionMapper getFunctionMapper​(java.util.List<Taglib> taglibs, java.util.Map<java.lang.String,​java.lang.Class<?>> imports, java.util.List<FunctionDefinition> funcs, Locator loc)
      Returns the function mapper representing a list of Taglib, imports and functions, or null if nothing is loaded.
      static FunctionMapper getFunctionMapper​(java.util.List<Taglib> taglibs, java.util.Map<java.lang.String,​java.lang.Class<?>> imports, Locator loc)
      Returns the function mapper representing a list of Taglib and imports, or null if nothing is loaded.
      static FunctionMapper getFunctionMapper​(java.util.List<Taglib> taglibs, Locator loc)
      Returns the function mapper representing a list of Taglib, or null if nothing is loaded.
      static TaglibDefinition load​(java.net.URL xmlURL)
      Loads functions and imports defined in the specified URL.
      static TaglibDefinition load​(Element root)
      Loads functions and imports defined in the specified DOM.
      static java.util.Map<java.lang.String,​Function> loadFunctions​(java.net.URL xmlURL)
      Loads functions defined in the specified URL.
      static java.util.Map<java.lang.String,​Function> loadFunctions​(Element root)
      Loads functions defined in the specified DOM.
      • Methods inherited from class java.lang.Object

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

      • Taglibs

        public Taglibs()
    • Method Detail

      • getFunctionMapper

        public static final FunctionMapper getFunctionMapper​(java.util.List<Taglib> taglibs,
                                                             java.util.Map<java.lang.String,​java.lang.Class<?>> imports,
                                                             Locator loc)
        Returns the function mapper representing a list of Taglib and imports, or null if nothing is loaded.

        The returned mapper is serializable.

        Parameters:
        taglibs - a list of Taglib.
        imports - a map of imported classes, Map<String nm, Class cls> Note: imports has the higher priority than import classes defined in taglibs.
        loc - the locator used to load taglib
        Since:
        3.0.0
      • getFunctionMapper

        public static final FunctionMapper getFunctionMapper​(java.util.Collection<Taglib> taglibs,
                                                             java.util.Map<java.lang.String,​java.lang.Class<?>> imports,
                                                             Locator loc)
        Returns the function mapper representing a collection of Taglib and imports, or null if nothing is loaded.

        The returned mapper is serializable.

        Parameters:
        taglibs - a collection of Taglib.
        imports - a map of imported classes, Map<String nm, Class cls> Note: imports has the higher priority than import classes defined in taglibs.
        loc - the locator used to load taglib
        Since:
        5.0.0
      • getFunctionMapper

        public static final FunctionMapper getFunctionMapper​(java.util.List<Taglib> taglibs,
                                                             java.util.Map<java.lang.String,​java.lang.Class<?>> imports,
                                                             java.util.List<FunctionDefinition> funcs,
                                                             Locator loc)
        Returns the function mapper representing a list of Taglib, imports and functions, or null if nothing is loaded.

        The returned mapper is serializable.

        Parameters:
        taglibs - a list of Taglib.
        imports - a map of imported classes, Map<String nm, Class cls>. Ignored if null. Note: imports has the higher priority than import classes defined in taglibs.
        funcs - a list of three-element arrays, Map<String prefix, String name, Function func]>. Ignored if null.
        loc - the locator used to load taglib
        Since:
        3.0.0
      • getFunctionMapper

        public static final FunctionMapper getFunctionMapper​(java.util.Collection<Taglib> taglibs,
                                                             java.util.Map<java.lang.String,​java.lang.Class<?>> imports,
                                                             java.util.Collection<FunctionDefinition> funcs,
                                                             Locator loc)
        Returns the function mapper representing a collection of Taglib, imports and functions, or null if nothing is loaded.

        The returned mapper is serializable.

        Parameters:
        taglibs - a collection of Taglib.
        imports - a map of imported classes, Map<String nm, Class cls>. Ignored if null. Note: imports has the higher priority than import classes defined in taglibs.
        funcs - a collection of three-element arrays, Map<String prefix, String name, Function func]>. Ignored if null.
        loc - the locator used to load taglib
        Since:
        5.0.0
      • getFunctionMapper

        public static final FunctionMapper getFunctionMapper​(java.util.List<Taglib> taglibs,
                                                             Locator loc)
        Returns the function mapper representing a list of Taglib, or null if nothing is loaded.

        The returned mapper is serializable.

        Parameters:
        taglibs - a list of Taglib.
        loc - the locator used to load taglib
      • getFunctionMapper

        public static final FunctionMapper getFunctionMapper​(java.util.Collection<Taglib> taglibs,
                                                             Locator loc)
        Returns the function mapper representing a collection of Taglib, or null if nothing is loaded.

        The returned mapper is serializable.

        Parameters:
        taglibs - a collection of Taglib.
        loc - the locator used to load taglib
        Since:
        5.0.0
      • loadFunctions

        public static final java.util.Map<java.lang.String,​Function> loadFunctions​(java.net.URL xmlURL)
                                                                                  throws java.lang.Exception
        Loads functions defined in the specified URL.

        Note: this method will cache the result, so next invocation with the same xmlURL will read directly from the cache.

        Returns:
        a map of functions: (String name, Function mtd).
        Throws:
        java.lang.Exception
      • loadFunctions

        public static final java.util.Map<java.lang.String,​Function> loadFunctions​(Element root)
                                                                                  throws java.lang.Exception
        Loads functions defined in the specified DOM.

        Unlike loadFunctions(URL), this method doesn't use cache.

        Returns:
        a map of function: (String name, Function mtd).
        Throws:
        java.lang.Exception
      • load

        public static final TaglibDefinition load​(java.net.URL xmlURL)
                                           throws java.lang.Exception
        Loads functions and imports defined in the specified URL.

        Note: this method will cache the result, so next invocation with the same xmlURL will read directly from the cache.

        Returns:
        the content of the taglib.
        Throws:
        java.lang.Exception
        Since:
        6.0.0
      • load

        public static final TaglibDefinition load​(Element root)
                                           throws java.lang.Exception
        Loads functions and imports defined in the specified DOM.

        Unlike loadFunctions(URL), this method doesn't use cache.

        Returns:
        a two-element array [Map<String nm, Function mtd>, Map<String nm, Class cls>]. The first element is the map of the functions. The second element is the map of classes to import.
        Throws:
        java.lang.Exception
        Since:
        3.0.0
      • getDefaultURL

        public static final java.net.URL getDefaultURL​(java.lang.String uri)
        Returns the URL associated with the specified taglib URI, or null if not found.
        Parameters:
        uri - the URI of taglib that are defined as the taglib-uri element in the /metainfo/tld/config.xml file. Both config.xml and TLD files must be locatable by the class loader (i.e., must be part of class path).