Class Alternator
java.lang.Object
org.apache.velocity.tools.generic.Alternator
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 $
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionAlternator
(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
Modifier and TypeMethodDescriptionReturns the current item without shifting the list index.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.toString()
Returns a string representation of the current item ornull
if the current item is null.
-
Field Details
-
list
-
index
private int index -
auto
private boolean auto
-
-
Constructor Details
-
Alternator
Creates a new Alternator for the specified list. Alternation defaults to automatic. -
Alternator
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 Details
-
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
Returns the current item without shifting the list index. -
getNext
Returns the current item, then shifts the list index. -
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.
-