wt.fc.collections
Class ReferenceMap.ReferenceList

java.lang.Object
  extended bywt.fc.collections.ReferenceMap.ReferenceList
Enclosing class:
ReferenceMap

final class ReferenceMap.ReferenceList
extends Object

Collects all the references from the source collection that match the given filter


Field Summary
private  List descendantsIncluded
           
private  FilterUtility.Filter filter
           
private  List topLevelOnly
           
 
Constructor Summary
(package private) ReferenceMap.ReferenceList(FilterUtility.Filter a_Filter)
           
 
Method Summary
(package private)  boolean add(WTReference r, List source)
          If the reference matches the filter, add it.
private  void clear()
          Remove all references from this list
private  void connect(WTReference old_reference, WTReference new_reference)
          Replace old_reference with new_reference
private  List createList()
           
(package private)  FilterUtility.Filter getFilter()
          Get the filter used for this list
(package private)  List getReferences(boolean include_subclasses)
          Get the list of references that match our filter, optionally including subclasses
(package private)  void initBuffers()
          Ensure lists are non-null.
(package private)  Iterator persistableIterator(boolean include_subclasses)
           
(package private)  Iterator persistableIterator(boolean include_subclasses, ReferenceMap.IteratorListener listener)
           
(package private)  ListIterator persistableListIterator(int start, boolean include_subclasses)
           
(package private)  Iterator queryKeyIterator(boolean include_subclasses)
           
(package private)  Iterator queryKeyIterator(boolean include_subclasses, ReferenceMap.IteratorListener listener)
           
(package private)  ListIterator queryKeyListIterator(int start, boolean include_subclasses)
           
(package private)  Iterator referenceIterator(boolean include_subclasses)
           
(package private)  Iterator referenceIterator(boolean include_subclasses, ReferenceMap.IteratorListener listener)
           
(package private)  ListIterator referenceListIterator(int start, boolean include_subclasses)
           
private  void remove(WTReference r, List source)
          If the reference matches the filter, remove it.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

topLevelOnly

private List topLevelOnly

descendantsIncluded

private List descendantsIncluded

filter

private final FilterUtility.Filter filter
Constructor Detail

ReferenceMap.ReferenceList

ReferenceMap.ReferenceList(FilterUtility.Filter a_Filter)
Method Detail

getReferences

List getReferences(boolean include_subclasses)
Get the list of references that match our filter, optionally including subclasses

Parameters:
include_subclasses -
Returns:
A list of WTReferences

getFilter

FilterUtility.Filter getFilter()
Get the filter used for this list

Returns:
Filter

add

boolean add(WTReference r,
            List source)
If the reference matches the filter, add it. If the source list is the same in-memory list as one of the lists managed by this instance, then don't add to that list

Parameters:
r -
source - Used so that if this reference list is being used in an iterator, the iterator can modify the list through the list's iterator.
Returns:
Whether or not the reference was added to this list

connect

private void connect(WTReference old_reference,
                     WTReference new_reference)
Replace old_reference with new_reference

Parameters:
old_reference -
new_reference -

remove

private void remove(WTReference r,
                    List source)
If the reference matches the filter, remove it.

Parameters:
r -
source - Used so that if this reference list is being used in an iterator, the iterator can modify the list through the list's iterator.
Returns:
Whether or not the reference was added to this list

clear

private void clear()
Remove all references from this list


initBuffers

void initBuffers()
Ensure lists are non-null. Allows iterators to safely modify lists directly


createList

private List createList()

persistableIterator

Iterator persistableIterator(boolean include_subclasses)
                       throws WTException
Throws:
WTException

persistableIterator

Iterator persistableIterator(boolean include_subclasses,
                             ReferenceMap.IteratorListener listener)
                       throws WTException
Throws:
WTException

queryKeyIterator

Iterator queryKeyIterator(boolean include_subclasses)

queryKeyIterator

Iterator queryKeyIterator(boolean include_subclasses,
                          ReferenceMap.IteratorListener listener)

referenceIterator

Iterator referenceIterator(boolean include_subclasses)

referenceIterator

Iterator referenceIterator(boolean include_subclasses,
                           ReferenceMap.IteratorListener listener)

persistableListIterator

ListIterator persistableListIterator(int start,
                                     boolean include_subclasses)
                               throws WTException
Throws:
WTException

queryKeyListIterator

ListIterator queryKeyListIterator(int start,
                                  boolean include_subclasses)

referenceListIterator

ListIterator referenceListIterator(int start,
                                   boolean include_subclasses)

toString

public String toString()