org.kuali.rice.krms.framework.engine
Class TermResolutionEngineImpl
java.lang.Object
   org.kuali.rice.krms.framework.engine.TermResolutionEngineImpl
org.kuali.rice.krms.framework.engine.TermResolutionEngineImpl
- All Implemented Interfaces: 
- TermResolutionEngine
- public class TermResolutionEngineImpl 
- extends Object- implements TermResolutionEngine
 
 
 
| Method Summary | 
|  void | addTermResolver(TermResolver<?> termResolver)Adds a
 TermResolverto theTermResolutionEngine. | 
|  void | addTermValue(Term term,
                         Object value)Adds a fact value to the
 TermResolutionEngine's internal state | 
| private  void | assembleLinearResolutionPlan(TermResolutionEngineImpl.Visited visited,
                                                         Map<TermResolutionEngineImpl.TermResolverKey,TermResolutionEngineImpl.Visited> visitedByKey,
                                                         List<TermResolutionEngineImpl.TermResolverKey> plan)
 | 
| protected  List<TermResolutionEngineImpl.TermResolverKey> | buildTermResolutionPlan(TermSpecification term)
 | 
| private  TermResolutionEngineImpl.Visited | buildVisited(TermResolver resolver,
                         TermResolutionEngineImpl.Visited parentVisited,
                         Collection<TermSpecification> metPrereqs)
 | 
| private  TermResolver<? extends Object> | createDestination(TermSpecification term)Create our dummy destination resolver
 | 
| private  TermResolver | getResolver(TermResolutionEngineImpl.TermResolverKey resolverKey,
                       TermResolver destination,
                       TermResolutionEngineImpl.TermResolverKey destinationKey)our dummy destination isn't allowed to pollute termResolversByKey, hence the ugly conditional encapsulated herein
 | 
| private  boolean | isPlannedBackToDestination(TermResolutionEngineImpl.Visited visited,
                                                     TermResolutionEngineImpl.TermResolverKey destinationKey,
                                                     Map<TermResolutionEngineImpl.TermResolverKey,TermResolutionEngineImpl.Visited> visitedByKey)
 | 
| 
 | resolveTerm(Term term)Resolves a given term into a fact
 | 
| private  void | validateTermParameters(TermResolver<?> resolver,
                                             Map<String,String> providedParameters)This method checks that the required parameters (as returned by the
 TermResolverviaTermResolver.getParameterNames()) are met in theMapof provided parameters. | 
 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
LOG
private static final org.apache.log4j.Logger LOG
termResolversByOutput
private final Map<TermSpecification,List<TermResolver<?>>> termResolversByOutput
termResolversByKey
private final Map<TermResolutionEngineImpl.TermResolverKey,TermResolver<?>> termResolversByKey
termCache
private final Map<Term,Object> termCache
TermResolutionEngineImpl
public TermResolutionEngineImpl()
addTermValue
public void addTermValue(Term term,
                         Object value)
- Description copied from interface: TermResolutionEngine
- Adds a fact value to the TermResolutionEngine's internal state
 
- 
- Specified by:
- addTermValuein interface- TermResolutionEngine
 
- 
- Parameters:
- term- the named Term
- value- the fact value
 
addTermResolver
public void addTermResolver(TermResolver<?> termResolver)
- Description copied from interface: TermResolutionEngine
- Adds a TermResolverto theTermResolutionEngine.  Once added, it may
 be used (unsurprisingly) by the engine to resolveTerms.
 
- 
- Specified by:
- addTermResolverin interface- TermResolutionEngine
 
- 
- Parameters:
- termResolver- the- TermResolverto add.
 
resolveTerm
public <T> T resolveTerm(Term term)
              throws TermResolutionException
- Description copied from interface: TermResolutionEngine
- Resolves a given term into a fact
 
- 
- Specified by:
- resolveTermin interface- TermResolutionEngine
 
- 
- Parameters:
- term- the- Termto resolve
- Returns:
- the fact value for the given Term
- Throws:
- TermResolutionException- if the given- Termcan't be resolved
 
validateTermParameters
private void validateTermParameters(TermResolver<?> resolver,
                                    Map<String,String> providedParameters)
                             throws TermResolutionException
- This method checks that the required parameters (as returned by the TermResolverviaTermResolver.getParameterNames()) are met in theMapof provided parameters.
 
- 
 
- 
- Parameters:
- resolver-
- providedParameters-
- Throws:
- TermResolutionException
 
buildTermResolutionPlan
protected List<TermResolutionEngineImpl.TermResolverKey> buildTermResolutionPlan(TermSpecification term)
- 
 
- 
 
buildVisited
private TermResolutionEngineImpl.Visited buildVisited(TermResolver resolver,
                                                      TermResolutionEngineImpl.Visited parentVisited,
                                                      Collection<TermSpecification> metPrereqs)
- 
 
- 
- Returns:
- the Visited object for the resolver we just, er, well, visited.
 
getResolver
private TermResolver getResolver(TermResolutionEngineImpl.TermResolverKey resolverKey,
                                 TermResolver destination,
                                 TermResolutionEngineImpl.TermResolverKey destinationKey)
- our dummy destination isn't allowed to pollute termResolversByKey, hence the ugly conditional encapsulated herein
 
- 
 
- 
 
isPlannedBackToDestination
private boolean isPlannedBackToDestination(TermResolutionEngineImpl.Visited visited,
                                           TermResolutionEngineImpl.TermResolverKey destinationKey,
                                           Map<TermResolutionEngineImpl.TermResolverKey,TermResolutionEngineImpl.Visited> visitedByKey)
- 
 
- 
- Parameters:
- visited-
- destinationKey-
- visitedByKey-
- plannedToDestination-
- Returns:
 
assembleLinearResolutionPlan
private void assembleLinearResolutionPlan(TermResolutionEngineImpl.Visited visited,
                                          Map<TermResolutionEngineImpl.TermResolverKey,TermResolutionEngineImpl.Visited> visitedByKey,
                                          List<TermResolutionEngineImpl.TermResolverKey> plan)
- 
 
- 
 
createDestination
private TermResolver<? extends Object> createDestination(TermSpecification term)
- Create our dummy destination resolver
 
- 
 
- 
- Parameters:
- term-
 
Copyright © 2004-2011 The Kuali Foundation. All Rights Reserved.