Interface Resolver<ProductType,CriteriaType>
- Type Parameters:
ProductType
- the type of objects produced by this resolverCriteriaType
- the type of criteria to process during resolution
public interface Resolver<ProductType,CriteriaType>
Generic interface for resolvers which process specified criteria and produce some implementation-specific
result information.
-
Method Summary
Modifier and TypeMethodDescriptionresolve
(CriteriaType criteria) Process the specified criteria and return the resulting instances of the product type which satisfy the criteria.resolveSingle
(CriteriaType criteria) Process the specified criteria and return a single instance of the product type which satisfies the criteria.
-
Method Details
-
resolve
@Nonnull @NonnullElements Iterable<ProductType> resolve(@Nullable CriteriaType criteria) throws ResolverException Process the specified criteria and return the resulting instances of the product type which satisfy the criteria.- Parameters:
criteria
- the criteria to evaluate or process- Returns:
- instances which satisfy the criteria
- Throws:
ResolverException
- thrown if there is an error processing the specified criteria
-
resolveSingle
Process the specified criteria and return a single instance of the product type which satisfies the criteria. If multiple items satisfy the criteria, the choice of which single item to return is implementation-dependent.- Parameters:
criteria
- the criteria to evaluate or process- Returns:
- a single instance satisfying the criteria, or null
- Throws:
ResolverException
- thrown if there is an error processing the specified criteria
-