Class Alternator
- java.lang.Object
-
- org.apache.velocity.tools.generic.Alternator
-
public class Alternator extends Object
Utility class for easily alternating over values in a list.Example usage:
java... String[] myColors = new String[]{"red", "blue"}; context.put("color", new Alternator(myColors)); String[] myStyles = new String[]{"hip", "fly", "groovy"}; // demonstrate manual alternation with this one context.put("style", new Alternator(false, myStyles)); template... #foreach( $foo in [1..5] ) $foo is $color and $style.next #end output... 1 is red and hip 2 is blue and fly 3 is red and groovy 4 is blue and hip 5 is red and fly- Since:
- Velocity Tools 1.2
- Version:
- $Id$
-
-
Constructor Summary
Constructors Constructor Description Alternator(boolean auto, Object... list)Creates a new Alternator for the specified list with the specified automatic shifting preference.Alternator(Object... list)Creates a new Alternator for the specified list.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ObjectgetCurrent()Returns the current item without shifting the list index.ObjectgetNext()Returns the current item, then shifts the list index.booleanisAuto()voidsetAuto(boolean auto)If set to true, the list index will shift automatically after a call to toString().voidshift()Manually shifts the list index.StringtoString()Returns a string representation of the current item ornullif the current item is null.
-
-
-
Constructor Detail
-
Alternator
public Alternator(Object... list)
Creates a new Alternator for the specified list. Alternation defaults to automatic.
-
Alternator
public Alternator(boolean auto, Object... list)Creates a new Alternator for the specified list with the specified automatic shifting preference.- Parameters:
auto- SeesetAuto(boolean auto).list- The elements to alternate over
-
-
Method Detail
-
isAuto
public boolean isAuto()
- Returns:
- Whether this Alternator shifts the list index
automatically after a call to
toString().
-
setAuto
public void setAuto(boolean auto)
If set to true, the list index will shift automatically after a call to toString().
-
shift
public void shift()
Manually shifts the list index. If it reaches the end of the list, it will start over again at zero.
-
getCurrent
public Object getCurrent()
Returns the current item without shifting the list index.
-
getNext
public Object getNext()
Returns the current item, then shifts the list index.
-
-