net.sf.jagg.msd
Class RandomAccessListDiscriminator<T>

java.lang.Object
  extended by net.sf.jagg.msd.AbstractDiscriminator<T>
      extended by net.sf.jagg.msd.ChainedDiscriminator<java.util.List<T>>
          extended by net.sf.jagg.msd.RandomAccessListDiscriminator<T>
All Implemented Interfaces:
Discriminator<java.util.List<T>>

public class RandomAccessListDiscriminator<T>
extends ChainedDiscriminator<java.util.List<T>>

A RandomAccessListDiscriminator discriminates Lists of Lists. The Lists are the items being discriminated and they should implement RandomAccess.

Since:
0.5.0
Author:
Randy Gettman
See Also:
RandomAccess

Nested Class Summary
protected  class RandomAccessListDiscriminator.ListChainedExtractor<E,B>
          A ListChainedExtractor extracts members of a random access list as labels.
 
Constructor Summary
RandomAccessListDiscriminator()
           
 
Method Summary
protected
<E> ChainedExtractor<E,T,java.util.List<T>>
getChainedExtractor(java.util.List<E> elements, Extractor<E,java.util.List<T>> extractor)
          Returns an appropriate ChainedExtractor.
protected
<E> Discriminator<T>
getDiscriminator(java.util.List<E> elements, ChainedExtractor<E,?,java.util.List<T>> extractor, int index)
          Returns the Discriminator that discriminates on the list's base type.
 
Methods inherited from class net.sf.jagg.msd.ChainedDiscriminator
discriminate
 
Methods inherited from class net.sf.jagg.msd.AbstractDiscriminator
discriminate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RandomAccessListDiscriminator

public RandomAccessListDiscriminator()
Method Detail

getChainedExtractor

protected <E> ChainedExtractor<E,T,java.util.List<T>> getChainedExtractor(java.util.List<E> elements,
                                                                          Extractor<E,java.util.List<T>> extractor)
Returns an appropriate ChainedExtractor.

Specified by:
getChainedExtractor in class ChainedDiscriminator<java.util.List<T>>
Type Parameters:
E - The type of element.
Parameters:
elements - The List of elements.
extractor - A ChainedExtractor that returns appropriate labels.
Returns:
An appropriate ChainedExtractor.
See Also:
ChainedDiscriminator.getDiscriminator(java.util.List, net.sf.jagg.msd.ChainedExtractor, int)

getDiscriminator

protected <E> Discriminator<T> getDiscriminator(java.util.List<E> elements,
                                                ChainedExtractor<E,?,java.util.List<T>> extractor,
                                                int index)
Returns the Discriminator that discriminates on the list's base type.

Specified by:
getDiscriminator in class ChainedDiscriminator<java.util.List<T>>
Parameters:
elements - The list of elements.
extractor - The ChainedExtractor that was obtained from getChainedExtractor.
index - The index of the loop.
Returns:
A Discriminator that discriminates on the list's base type.
See Also:
ChainedDiscriminator.getChainedExtractor(java.util.List, net.sf.jagg.msd.Extractor)


Copyright © 2010-2013 jAgg Team. All Rights Reserved.