edu.internet2.middleware.shibboleth.common.attribute.filtering.provider.match.basic
Class AbstractMatchFunctor

java.lang.Object
  extended by edu.internet2.middleware.shibboleth.common.attribute.filtering.provider.match.basic.AbstractMatchFunctor
All Implemented Interfaces:
MatchFunctor
Direct Known Subclasses:
AbstractEntityGroupMatchFunctor, AbstractRegexMatchFunctor, AbstractStringMatchFunctor, AndMatchFunctor, AnyMatchFunctor, NotMatchFunctor, NumOfAttributeValuesMatchFunctor, OrMatchFunctor, ScriptMatchFunctor

public abstract class AbstractMatchFunctor
extends Object
implements MatchFunctor

Base class for MatchFunctors that delegate the evaluation and negate the result if necessary. This class provides an extension point for functionality across all match functors.


Constructor Summary
AbstractMatchFunctor()
           
 
Method Summary
protected abstract  boolean doEvaluatePolicyRequirement(ShibbolethFilteringContext filterContext)
          Evaluates this matching criteria.
protected abstract  boolean doEvaluateValue(ShibbolethFilteringContext filterContext, String attributeId, Object attributeValue)
          Evaluates this matching criteria.
 boolean evaluateDenyRule(ShibbolethFilteringContext filterContext, String attributeId, Object attributeValue)
          Evaluates this matching criteria.
 boolean evaluatePermitValue(ShibbolethFilteringContext filterContext, String attributeId, Object attributeValue)
          Evaluates this matching criteria.
 boolean evaluatePolicyRequirement(ShibbolethFilteringContext filterContext)
          Evaluates this matching criteria.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractMatchFunctor

public AbstractMatchFunctor()
Method Detail

evaluatePolicyRequirement

public boolean evaluatePolicyRequirement(ShibbolethFilteringContext filterContext)
                                  throws FilterProcessingException
Evaluates this matching criteria. This evaluation is used while the filtering engine determines policy applicability.

Specified by:
evaluatePolicyRequirement in interface MatchFunctor
Parameters:
filterContext - current filtering context
Returns:
true if the criteria for this matching function are meant
Throws:
FilterProcessingException - thrown if the function can not be evaluated

evaluatePermitValue

public boolean evaluatePermitValue(ShibbolethFilteringContext filterContext,
                                   String attributeId,
                                   Object attributeValue)
                            throws FilterProcessingException
Evaluates this matching criteria. This evaluation is used while the filtering engine evaluating permit value rules.

Specified by:
evaluatePermitValue in interface MatchFunctor
Parameters:
filterContext - the current filtering context
attributeId - ID of the attribute being evaluated
attributeValue - value of the attribute being evaluated
Returns:
true if the criteria for this matching function are meant
Throws:
FilterProcessingException - thrown if the function can not be evaluated

evaluateDenyRule

public boolean evaluateDenyRule(ShibbolethFilteringContext filterContext,
                                String attributeId,
                                Object attributeValue)
                         throws FilterProcessingException
Evaluates this matching criteria. This evaluation is used while the filtering engine is evaluating deny value rules.

Specified by:
evaluateDenyRule in interface MatchFunctor
Parameters:
filterContext - the current filtering context
attributeId - ID of the attribute being evaluated
attributeValue - value of the attribute being evaluated
Returns:
true if the criteria for this matching function are meant
Throws:
FilterProcessingException - thrown if the function can not be evaluated

doEvaluatePolicyRequirement

protected abstract boolean doEvaluatePolicyRequirement(ShibbolethFilteringContext filterContext)
                                                throws FilterProcessingException
Evaluates this matching criteria. This evaluation is used while the filtering engine determines policy applicability.

Parameters:
filterContext - current filtering context
Returns:
true if the criteria for this matching function are meant
Throws:
FilterProcessingException - thrown if the function can not be evaluated

doEvaluateValue

protected abstract boolean doEvaluateValue(ShibbolethFilteringContext filterContext,
                                           String attributeId,
                                           Object attributeValue)
                                    throws FilterProcessingException
Evaluates this matching criteria. This evaluation is used while the filtering engine is evaluating either a deny or permit value rule.

Parameters:
filterContext - the current filtering context
attributeId - ID of the attribute being evaluated
attributeValue - value of the attribute being evaluated
Returns:
true if the criteria for this matching function are meant
Throws:
FilterProcessingException - thrown if the function can not be evaluated


Copyright © 2006-2010 Internet2. All Rights Reserved.