Class Alternator
- java.lang.Object
-
- org.apache.velocity.tools.generic.Alternator
-
public class Alternator extends java.lang.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: Alternator.java 603419 2007-12-12 00:04:07Z nbubna $
-
-
Constructor Summary
Constructors Constructor Description Alternator(boolean auto, java.lang.Object... list)
Creates a new Alternator for the specified list with the specified automatic shifting preference.Alternator(java.lang.Object... list)
Creates a new Alternator for the specified list.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
getCurrent()
Returns the current item without shifting the list index.java.lang.Object
getNext()
Returns the current item, then shifts the list index.boolean
isAuto()
void
setAuto(boolean auto)
If set to true, the list index will shift automatically after a call to toString().void
shift()
Manually shifts the list index.java.lang.String
toString()
Returns a string representation of the current item ornull
if the current item is null.
-
-
-
Constructor Detail
-
Alternator
public Alternator(java.lang.Object... list)
Creates a new Alternator for the specified list. Alternation defaults to automatic.
-
Alternator
public Alternator(boolean auto, java.lang.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 java.lang.Object getCurrent()
Returns the current item without shifting the list index.
-
getNext
public java.lang.Object getNext()
Returns the current item, then shifts the list index.
-
toString
public java.lang.String toString()
Returns a string representation of the current item ornull
if the current item is null. Ifauto
is true, this will shift after returning the current item.- Overrides:
toString
in classjava.lang.Object
-
-