org.opensaml.xml.security
Class CriteriaFilteringIterable<T>

java.lang.Object
  extended by org.opensaml.xml.security.CriteriaFilteringIterable<T>
Type Parameters:
T - the type of candidate elements being evaluated
All Implemented Interfaces:
Iterable<T>

public class CriteriaFilteringIterable<T>
extends Object
implements Iterable<T>

An implementation of Iterable which wraps another underlying Iterable in order to support production of instances of CriteriaFilteringIterator based on the underlying Iterable's Iterator. For iterator behavior and meaning and use of the parameters, see CriteriaFilteringIterator.


Field Summary
private  Iterable<? extends T> candidates
          The candidates to evaluate.
private  Set<EvaluableCriteria<T>> criteriaSet
          The set of criteria against which to evaluate the candidates.
private  boolean meetAll
          Flag indicating whether the candidate must satisfy all the criteria in the set, or just one.
private  boolean unevaledSatisfies
          Flag indicating how candidates which can not be evaluated by a criteria are to be handled.
 
Constructor Summary
CriteriaFilteringIterable(Iterable<? extends T> candidatesIterable, Set<EvaluableCriteria<T>> criteria, boolean meetAllCriteria, boolean unevaluableSatisfies)
          Constructor.
 
Method Summary
 Iterator<T> iterator()
          
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

candidates

private Iterable<? extends T> candidates
The candidates to evaluate.


criteriaSet

private Set<EvaluableCriteria<T>> criteriaSet
The set of criteria against which to evaluate the candidates.


meetAll

private boolean meetAll
Flag indicating whether the candidate must satisfy all the criteria in the set, or just one.


unevaledSatisfies

private boolean unevaledSatisfies
Flag indicating how candidates which can not be evaluated by a criteria are to be handled.

Constructor Detail

CriteriaFilteringIterable

public CriteriaFilteringIterable(Iterable<? extends T> candidatesIterable,
                                 Set<EvaluableCriteria<T>> criteria,
                                 boolean meetAllCriteria,
                                 boolean unevaluableSatisfies)
Constructor.

Parameters:
candidatesIterable - the candidates to evaluate
criteria - the set of criteria against which to evaluate the candidates
meetAllCriteria - whether a candidate must meet all criteria, or just one
unevaluableSatisfies - whether a can-not-evaluate result of a particular criteria's evaluation is treated as the candidate having satisfied or not satisfied the criteria, for purposes of determinig whether to return the element
Method Detail

iterator

public Iterator<T> iterator()

Specified by:
iterator in interface Iterable<T>


Copyright © 1999-2012. All Rights Reserved.