org.pentaho.reporting.engine.classic.core.util
Class LevelList

java.lang.Object
  extended by org.pentaho.reporting.engine.classic.core.util.LevelList
All Implemented Interfaces:
Cloneable

public class LevelList
extends Object
implements Cloneable

A list that associates a level (instance of Integer) with each element in the list.

Author:
Thomas Morgner

Constructor Summary
LevelList()
          Creates a new list (initially empty).
 
Method Summary
 void add(Object o)
          Adds an element at level zero.
 void add(Object o, int level)
          Adds an element at a given level.
 void clear()
          Clears the list.
 Object clone()
          Clones the list.
 Object get(int index)
          Returns the element with the given index.
 Object[] getElementArrayForLevel(int level)
          Returns an iterator for all the elements at a given level.
 Object[] getElementArrayForLevel(int level, Object[] target)
          Returns an iterator for all the elements at a given level.
 int getElementCountForLevel(int level)
          Returns the numer of elements registered for an certain level.
 int getLevel(int index)
          Returns the level for an element.
 int getLevel(Object o)
          Returns the level of an element.
 Iterator getLevelsAscending()
          Returns an iterator that iterates through the levels in ascending order.
 Iterator getLevelsDescending()
          Returns an iterator that iterates through the levels in descending order.
 Integer[] getLevelsDescendingArray()
          Returns the levels of the elements in the list in descending order.
 int indexOf(Object o)
          Returns the index of an element.
 void setLevel(int index, int level)
          Sets the level for an element.
 void setLevel(Object o, int level)
          Sets the level of an element.
 int size()
          Returns the number of elements in the list.
 Object[] toArray()
          Returns the elements as an array.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LevelList

public LevelList()
Creates a new list (initially empty).

Method Detail

size

public int size()
Returns the number of elements in the list.

Returns:
the element count.

getLevelsAscending

public Iterator getLevelsAscending()
Returns an iterator that iterates through the levels in ascending order.

Returns:
an iterator.

getLevelsDescendingArray

public Integer[] getLevelsDescendingArray()
Returns the levels of the elements in the list in descending order.

Returns:
the levels in descending order.

getLevelsDescending

public Iterator getLevelsDescending()
Returns an iterator that iterates through the levels in descending order.

Returns:
an iterator.

toArray

public Object[] toArray()
Returns the elements as an array.

Returns:
the array.

getElementArrayForLevel

public Object[] getElementArrayForLevel(int level,
                                        Object[] target)
Returns an iterator for all the elements at a given level.

Parameters:
level - the level.
target - the target array that should receive the contentes
Returns:
the data for the level as object array.

getElementArrayForLevel

public Object[] getElementArrayForLevel(int level)
Returns an iterator for all the elements at a given level.

Parameters:
level - the level.
Returns:
the data for the level as object array.

getElementCountForLevel

public int getElementCountForLevel(int level)
Returns the numer of elements registered for an certain level.

Parameters:
level - the level that should be queried
Returns:
the numer of elements in that level

get

public Object get(int index)
Returns the element with the given index.

Parameters:
index - the index.
Returns:
the element.

add

public void add(Object o)
Adds an element at level zero.

Parameters:
o - the element.

add

public void add(Object o,
                int level)
Adds an element at a given level.

Parameters:
o - the element.
level - the level.

setLevel

public void setLevel(int index,
                     int level)
Sets the level for an element.

Parameters:
index - the element index.
level - the level.

getLevel

public int getLevel(int index)
Returns the level for an element.

Parameters:
index - the element index.
Returns:
the level.

indexOf

public int indexOf(Object o)
Returns the index of an element.

Parameters:
o - the element.
Returns:
the index.

getLevel

public int getLevel(Object o)
Returns the level of an element.

Parameters:
o - the element.
Returns:
the level.

setLevel

public void setLevel(Object o,
                     int level)
Sets the level of an element.

Parameters:
o - the element.
level - the level.

clone

public Object clone()
             throws CloneNotSupportedException
Clones the list.

Overrides:
clone in class Object
Returns:
the clone.
Throws:
CloneNotSupportedException - should never happen.

clear

public void clear()
Clears the list.