ecologylab.xml.types.element
Class ArrayListState<T extends ElementState>

java.lang.Object
  extended by ecologylab.generic.Debug
      extended by ecologylab.xml.ElementState
          extended by ecologylab.xml.types.element.ArrayListState<T>
All Implemented Interfaces:
OptimizationTypes, XMLTranslationExceptionTypes, java.lang.Cloneable, java.lang.Iterable<T>, java.util.Collection<T>, java.util.List<T>
Direct Known Subclasses:
AppletDesc, ApplicationDesc, AssetsState, Channel, KeywordList, MetaPrefSet, MixedInitiativeOp, Outline, Pref, Preference, PreferencesSet, Records, ResourceElementArray, Response, ResultSet, SeedSet

public class ArrayListState<T extends ElementState>
extends ElementState
implements java.lang.Cloneable, java.lang.Iterable<T>, java.util.List<T>

An ElementState XML tree node for collecting a set of nested elements, using an ArrayList (non-synchronized).

Author:
andruid

Nested Class Summary
 
Nested classes/interfaces inherited from class ecologylab.xml.ElementState
ElementState.ClassToCollectionMap, ElementState.DeclarationStyle, ElementState.xml_attribute, ElementState.xml_class, ElementState.xml_classes, ElementState.xml_collection, ElementState.xml_leaf, ElementState.xml_map, ElementState.xml_nested, ElementState.xml_tag
 
Field Summary
protected  java.util.ArrayList<T> set
           
 
Fields inherited from class ecologylab.xml.ElementState
CDATA, ESTIMATE_CHARS_PER_FIELD, FLOATING_PRECISION_OFF, MARSHALLING_PARAMS, NORMAL, UTF16, UTF16_LE, UTF8, XML_FILE_HEADER
 
Fields inherited from interface ecologylab.xml.OptimizationTypes
BAD_FIELD, COLLECTION_ELEMENT, COLLECTION_SCALAR, IGNORED_ATTRIBUTE, IGNORED_ELEMENT, LEAF_NODE_VALUE, MAP_ELEMENT, MAP_SCALAR, NAME_SPACE_ATTRIBUTE, NAME_SPACE_LEAF_NODE, NAME_SPACE_MASK, NAME_SPACE_NESTED_ELEMENT, NAMESPACE_IGNORED_ELEMENT, NAMESPACE_TRIAL_ELEMENT, OTHER_NESTED_ELEMENT, REGULAR_ATTRIBUTE, REGULAR_NESTED_ELEMENT, ROOT, UNSET_TYPE, XMLNS_ATTRIBUTE, XMLNS_IGNORED
 
Fields inherited from interface ecologylab.xml.XMLTranslationExceptionTypes
FILE_NOT_FOUND, IO_EXCEPTION, NULL_PURL, UNKNOWN
 
Constructor Summary
ArrayListState()
           
 
Method Summary
 void add(int i, T obj)
           
 boolean add(T elementState)
          Add the element to this.
 boolean addAll(java.util.Collection<? extends T> c)
           
 boolean addAll(int index, java.util.Collection<? extends T> c)
           
 void clear()
          Remove all elements from our Collection.
 ArrayListState<T> clone()
           
 boolean contains(java.lang.Object o)
           
 boolean containsAll(java.util.Collection<?> c)
           
 T get(int i)
           
 java.util.ArrayList<T> getArrayList()
          Returns the underlying ArrayList implementation.
protected  java.util.Collection<? extends ElementState> getCollection(java.lang.Class thatClass)
          Return the collection object associated with this
 int indexOf(java.lang.Object elem)
           
 boolean isEmpty()
           
 java.util.Iterator<T> iterator()
           
 int lastIndexOf(java.lang.Object elem)
           
 java.util.ListIterator<T> listIterator()
           
 java.util.ListIterator<T> listIterator(int index)
           
 void recycle()
          Clear data structures and references to enable garbage collecting of resources associated with this.
 T remove(int i)
           
 boolean remove(java.lang.Object o)
           
 boolean removeAll(java.util.Collection<?> c)
           
 boolean retainAll(java.util.Collection<?> c)
           
 java.util.ArrayList<T> set()
          Use lazy evaluation for creating the set, in order to make it possible this class lightweight enough to use in subclass situations where they may be no elements added to the set, where the ElementState is only being used for direct fields.
 T set(int index, T element)
           
 int size()
          Get the number of elements in the set.
 java.util.List<T> subList(int fromIndex, int toIndex)
           
 java.lang.Object[] toArray()
           
<T> T[]
toArray(T[] a)
           
 void trimToSize()
           
 
Methods inherited from class ecologylab.xml.ElementState
addNestedElement, addNestedElement, appendTextNodeString, buildDOM, buildDOM, buildDOM, buildDOM, buildDOM, buildDOMFromXMLCharSequence, buildDOMFromXMLString, checkAnnotation, convertNameStyles, createChildHook, fieldToXMLOptimizations, floatingPrecision, getElementStateById, getMap, getNestedNameSpace, getTextNodeString, leafElementFieldNames, lookupNestedNameSpace, optimizations, parent, postTranslationProcessingHook, preTranslationProcessingHook, setDeclarationStyle, setFieldUsingTypeRegistry, setFloatingPrecision, setParent, setUseDOMForTranslateTo, translateFromXML, translateFromXML, translateFromXML, translateFromXML, translateFromXML, translateFromXMLCharSequence, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOMCharSequence, translateFromXMLDOMCharSequence, translateFromXMLRootNode, translateFromXMLSAX, translateFromXMLSAX, translateFromXMLSAX, translateFromXMLSAX, translateFromXMLSAX, translateToDOM, translateToXML, translateToXML, translateToXML, translateToXML, writePrettyXML, writePrettyXML, writePrettyXML
 
Methods inherited from class ecologylab.generic.Debug
classSimpleName, closeLoggingFile, debug, debug, debug, debug, debugA, debugA, debugA, debugI, debugI, debugI, error, error, getClassName, getClassName, getInteractive, getPackageName, getPackageName, getPackageName, initialize, level, level, level, logToFile, print, print, println, println, println, println, println, println, printlnA, printlnA, printlnA, printlnI, printlnI, printlnI, printlnI, setLoggingFile, show, show, superString, toggleInteractive, toString, toString, warning, warning, weird, weird
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
equals, hashCode
 

Field Detail

set

protected java.util.ArrayList<T extends ElementState> set
Constructor Detail

ArrayListState

public ArrayListState()
Method Detail

set

public java.util.ArrayList<T> set()
Use lazy evaluation for creating the set, in order to make it possible this class lightweight enough to use in subclass situations where they may be no elements added to the set, where the ElementState is only being used for direct fields.

Returns:

getArrayList

public java.util.ArrayList<T> getArrayList()
Returns the underlying ArrayList implementation.

Returns:

add

public boolean add(T elementState)
Add the element to this. If succesful, also set its parent to be this.

Specified by:
add in interface java.util.Collection<T extends ElementState>
Specified by:
add in interface java.util.List<T extends ElementState>

remove

public T remove(int i)
Specified by:
remove in interface java.util.List<T extends ElementState>

iterator

public java.util.Iterator<T> iterator()
Specified by:
iterator in interface java.lang.Iterable<T extends ElementState>
Specified by:
iterator in interface java.util.Collection<T extends ElementState>
Specified by:
iterator in interface java.util.List<T extends ElementState>

add

public void add(int i,
                T obj)
Specified by:
add in interface java.util.List<T extends ElementState>

get

public T get(int i)
Specified by:
get in interface java.util.List<T extends ElementState>
Parameters:
i - the index of the element to get.
Returns:
the element located at i; if i is greater than the size of set or less than 0, returns null.

contains

public boolean contains(java.lang.Object o)
Specified by:
contains in interface java.util.Collection<T extends ElementState>
Specified by:
contains in interface java.util.List<T extends ElementState>

getCollection

protected java.util.Collection<? extends ElementState> getCollection(java.lang.Class thatClass)
Return the collection object associated with this

Overrides:
getCollection in class ElementState
Parameters:
thatClass - The class of the ElementState superclass that could be stored in a Collection.
Returns:
The ArrayList we collect in.

clear

public void clear()
Remove all elements from our Collection.

Specified by:
clear in interface java.util.Collection<T extends ElementState>
Specified by:
clear in interface java.util.List<T extends ElementState>

size

public int size()
Get the number of elements in the set.

Specified by:
size in interface java.util.Collection<T extends ElementState>
Specified by:
size in interface java.util.List<T extends ElementState>
Returns:

clone

public ArrayListState<T> clone()
Overrides:
clone in class java.lang.Object

trimToSize

public void trimToSize()

toArray

public java.lang.Object[] toArray()
Specified by:
toArray in interface java.util.Collection<T extends ElementState>
Specified by:
toArray in interface java.util.List<T extends ElementState>

addAll

public boolean addAll(java.util.Collection<? extends T> c)
Specified by:
addAll in interface java.util.Collection<T extends ElementState>
Specified by:
addAll in interface java.util.List<T extends ElementState>

containsAll

public boolean containsAll(java.util.Collection<?> c)
Specified by:
containsAll in interface java.util.Collection<T extends ElementState>
Specified by:
containsAll in interface java.util.List<T extends ElementState>

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface java.util.Collection<T extends ElementState>
Specified by:
isEmpty in interface java.util.List<T extends ElementState>

remove

public boolean remove(java.lang.Object o)
Specified by:
remove in interface java.util.Collection<T extends ElementState>
Specified by:
remove in interface java.util.List<T extends ElementState>

removeAll

public boolean removeAll(java.util.Collection<?> c)
Specified by:
removeAll in interface java.util.Collection<T extends ElementState>
Specified by:
removeAll in interface java.util.List<T extends ElementState>

retainAll

public boolean retainAll(java.util.Collection<?> c)
Specified by:
retainAll in interface java.util.Collection<T extends ElementState>
Specified by:
retainAll in interface java.util.List<T extends ElementState>

toArray

public <T> T[] toArray(T[] a)
Specified by:
toArray in interface java.util.Collection<T extends ElementState>
Specified by:
toArray in interface java.util.List<T extends ElementState>

addAll

public boolean addAll(int index,
                      java.util.Collection<? extends T> c)
Specified by:
addAll in interface java.util.List<T extends ElementState>

indexOf

public int indexOf(java.lang.Object elem)
Specified by:
indexOf in interface java.util.List<T extends ElementState>

lastIndexOf

public int lastIndexOf(java.lang.Object elem)
Specified by:
lastIndexOf in interface java.util.List<T extends ElementState>

listIterator

public java.util.ListIterator<T> listIterator()
Specified by:
listIterator in interface java.util.List<T extends ElementState>

listIterator

public java.util.ListIterator<T> listIterator(int index)
Specified by:
listIterator in interface java.util.List<T extends ElementState>

set

public T set(int index,
             T element)
Specified by:
set in interface java.util.List<T extends ElementState>

subList

public java.util.List<T> subList(int fromIndex,
                                 int toIndex)
Specified by:
subList in interface java.util.List<T extends ElementState>

recycle

public void recycle()
Clear data structures and references to enable garbage collecting of resources associated with this. Calling recycle() on an ArrayListState has the side effect of recycling every object contained in the ArrayListState. If the elements of the ArrayListState should be retained, then call clear(), then recycle().

Overrides:
recycle in class ElementState