Package net.shibboleth.idp.authn.principal

# Interface PrincipalEvalPredicateFactory

All Known Implementing Classes:
  `ExactPrincipalEvalPredicateFactory`, `InexactPrincipalEvalPredicateFactory`

public interface PrincipalEvalPredicateFactory
Generates a `Predicate` to evaluate a `PrincipalSupportingComponent` against a requested form of authentication expressed in terms of a `Principal`.

The predicate is constructed around a `Principal` to compare in an implementation-specific manner against the candidate component. A given factory produces predicates that implement a particular set of matching rules. Factories are accessed via a `PrincipalEvalPredicateFactoryRegistry`.

## Method Summary

Modifier and Type
Method
Description
`PrincipalEvalPredicate`
`getPredicate(Principal candidate)`
Get a predicate to compare a candidate `Principal` object against a `PrincipalSupportingComponent` for a "match", where the definition of a match is implementation-specific.

## Method Details

### getPredicate

@Nonnull PrincipalEvalPredicate getPredicate(@Nonnull Principal candidate)
Get a predicate to compare a candidate `Principal` object against a `PrincipalSupportingComponent` for a "match", where the definition of a match is implementation-specific.

Parameters:
  `candidate` - a `Principal` object to evaluate
Returns:
  a `PrincipalEvalPredicate` implementing custom matching rules