Condition.java
01 /*
02  * Created on May 14, 2007
03  */
04 package com.x8ing.lsm4j;
05 
06 import com.x8ing.lsm4j.state.NoMatchingTransitionConditionFoundException;
07 
08 /**
09  * A condition is an expression that is appended to a transition between to
10  * states. If the processing leaves one state, all conditions are evaluated in random order. The
11  * first condition which results in "true" will be selected for further processing and the
12  * controler follows this transaction.
13  <p>
14  * If no transaction is found which results true, an exception is thrown. {@link NoMatchingTransitionConditionFoundException}.
15  *
16  @author Patrick Heusser
17  */
18 public interface Condition {
19 
20     public String traceInfo();
21 
22     public boolean conditionTrue(StateContext currentContext);
23 
24 }