The Drools implementation of the
StatefulRuleSession interface which is a representation of a stateful rules engine session. A stateful rules engine session exposes a stateful rule execution API to an underlying rules engine. The session allows arbitrary objects to be added and removed to and from the rule session state. Additionally, objects currently part of the rule session state may be updated.
There are inherently side-effects to adding objects to the rule session state. The execution of a RuleExecutionSet can add, remove and update objects in the rule session state. The objects in the rule session state are therefore dependent on the rules within the
RuleExecutionSet as well as the rule engine vendor's specific rule engine behavior.
Handle instances are used by the rule engine vendor to track
Objects added to the rule session state. This allows multiple instances of equivalent
Objects to be added to the session state and identified, even after serialization.
@see StatefulRuleSession
@author N. Alex Rupp (n_alex
codehaus.org)
@author thomas diesler