Class ListTool


  • @Deprecated
    @DefaultKey("lists")
    public class ListTool
    extends java.lang.Object
    Deprecated.
    Tool for working with Lists and arrays in Velocity templates.

    With the release of Velocity 1.6, this class is largely obsolete since Velocity 1.6 now allows all List methods to be called on arrays within templates.

    It provides a method to get and set specified elements. Also provides methods to perform the following actions to Lists and arrays:

    • Check if it is empty.
    • Check if it contains a certain element.

     Example uses:
      $primes                    -> new int[] {2, 3, 5, 7}
      $lists.size($primes)        -> 4
      $lists.get($primes, 2)      -> 5
      $lists.set($primes, 2, 1)   -> (primes[2] becomes 1)
      $lists.get($primes, 2)      -> 1
      $lists.isEmpty($primes)     -> false
      $lists.contains($primes, 7) -> true
    
     Example tools.xml config (if you want to use this with VelocityView):
     <tools>
       <toolbox scope="application">
         <tool class="org.apache.velocity.tools.generic.ListTool"/>
       </toolbox>
     </tools>
     

    This tool is entirely threadsafe, and has no instance members. It may be used in any scope (request, session, or application).

    Since:
    VelocityTools 1.2
    Version:
    $Id: $
    Author:
    Shinobu Kawai
    • Constructor Summary

      Constructors 
      Constructor Description
      ListTool()
      Deprecated.
       
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      private java.lang.Boolean arrayContains​(java.lang.Object array, java.lang.Object element)
      Deprecated.
      Checks if an array contains a certain element.
      java.lang.Boolean contains​(java.lang.Object list, java.lang.Object element)
      Deprecated.
      Checks if a List/array contains a certain element.
      private boolean equals​(java.lang.Object what, java.lang.Object with)
      Deprecated.
      Check if two objects are equal.
      java.lang.Object get​(java.lang.Object list, int index)
      Deprecated.
      Gets the specified element of a List/array.
      private java.lang.Object getFromArray​(java.lang.Object array, int index)
      Deprecated.
      Gets the specified element of an array.
      boolean isArray​(java.lang.Object object)
      Deprecated.
      Checks if an object is an array.
      java.lang.Boolean isEmpty​(java.lang.Object list)
      Deprecated.
      Checks if a List/array is empty.
      boolean isList​(java.lang.Object object)
      Deprecated.
      Checks if an object is a List.
      java.lang.Object set​(java.lang.Object list, int index, java.lang.Object value)
      Deprecated.
      Sets the specified element of a List/array.
      private java.lang.Object setToArray​(java.lang.Object array, int index, java.lang.Object value)
      Deprecated.
      Sets the specified element of an array.
      java.lang.Integer size​(java.lang.Object list)
      Deprecated.
      Gets the size of a List/array.
      • Methods inherited from class java.lang.Object

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

      • ListTool

        public ListTool()
        Deprecated.
    • Method Detail

      • get

        public java.lang.Object get​(java.lang.Object list,
                                    int index)
        Deprecated.
        Gets the specified element of a List/array. It will return null under the following conditions:
        • list is null.
        • list is not a List/array.
        • list doesn't have an indexth value.
        Parameters:
        list - the List/array object.
        index - the index of the List/array to get.
        Returns:
        the specified element of the List/array.
      • getFromArray

        private java.lang.Object getFromArray​(java.lang.Object array,
                                              int index)
        Deprecated.
        Gets the specified element of an array.
        Parameters:
        array - the array object.
        index - the index of the array to get.
        Returns:
        the specified element of the array.
      • set

        public java.lang.Object set​(java.lang.Object list,
                                    int index,
                                    java.lang.Object value)
        Deprecated.
        Sets the specified element of a List/array. It will return null under the following conditions:
        • list is null.
        • list is not a List/array.
        • list doesn't have an indexth value.
        Parameters:
        list - the List/array object.
        index - the index of the List/array to set.
        value - the element to set.
        Returns:
        blank if set, null if not set.
      • setToArray

        private java.lang.Object setToArray​(java.lang.Object array,
                                            int index,
                                            java.lang.Object value)
        Deprecated.
        Sets the specified element of an array.
        Parameters:
        array - the array object.
        index - the index of the array to set.
        value - the element to set.
        Returns:
        blank if set, null if not set.
      • size

        public java.lang.Integer size​(java.lang.Object list)
        Deprecated.
        Gets the size of a List/array. It will return null under the following conditions:
        • list is null.
        • list is not a List/array.
        Parameters:
        list - the List object.
        Returns:
        the size of the List.
      • isArray

        public boolean isArray​(java.lang.Object object)
        Deprecated.
        Checks if an object is an array.
        Parameters:
        object - the object to check.
        Returns:
        true if the object is an array.
      • isList

        public boolean isList​(java.lang.Object object)
        Deprecated.
        Checks if an object is a List.
        Parameters:
        object - the object to check.
        Returns:
        true if the object is a List.
      • isEmpty

        public java.lang.Boolean isEmpty​(java.lang.Object list)
        Deprecated.
        Checks if a List/array is empty.
        Parameters:
        list - the List/array to check.
        Returns:
        true if the List/array is empty.
      • contains

        public java.lang.Boolean contains​(java.lang.Object list,
                                          java.lang.Object element)
        Deprecated.
        Checks if a List/array contains a certain element.
        Parameters:
        list - the List/array to check.
        element - the element to check.
        Returns:
        true if the List/array contains the element.
      • arrayContains

        private java.lang.Boolean arrayContains​(java.lang.Object array,
                                                java.lang.Object element)
        Deprecated.
        Checks if an array contains a certain element.
        Parameters:
        array - the array to check.
        element - the element to check.
        Returns:
        true if the array contains the element.
      • equals

        private boolean equals​(java.lang.Object what,
                               java.lang.Object with)
        Deprecated.
        Check if two objects are equal.
        Parameters:
        what - an object
        with - another object.
        Returns:
        true if the two objects are equal.