org.jboss.soa.esb.services.rules
Interface RuleService


public interface RuleService

RulesEngine Interface. Separates implementation from the runtime, allowing the ESB to support different implementations of rule engines.

Author:
jdelong@redhat.com

Method Summary
 Message continueStatefulRulesExecution(java.lang.String rules, boolean dispose, Message message, java.util.Map<java.lang.String,java.lang.Object> globals, java.util.List<java.lang.Object> objectList)
          Continue executing rules where the working memory already exists.
 Message executeStatefulRules(java.lang.String ruleSet, java.lang.String dsl, boolean ruleReload, Message message, java.util.Map<java.lang.String,java.lang.Object> globals, java.util.List<java.lang.Object> objectList)
          Execute rules using a certain ruleSet and domain specific language using the Stateful rule engine API
 Message executeStatefulRulesFromDecisionTable(java.lang.String decisionTable, boolean ruleReload, Message message, java.util.Map<java.lang.String,java.lang.Object> globals, java.util.List<java.lang.Object> objectList)
          Execute rules from a decision table using the Stateful rule engine API
 Message executeStatefulRulesFromRuleAgent(java.lang.String ruleAgentProperties, Message message, java.util.Map<java.lang.String,java.lang.Object> globals, java.util.List<java.lang.Object> objectList)
          Execute rules using a rule package retrieved via the Rule Agent from a URL of local file system using the Stateful rule engine API
 Message executeStatelessRules(java.lang.String ruleSet, java.lang.String dsl, boolean ruleReload, Message message, java.util.Map<java.lang.String,java.lang.Object> globals, java.util.List<java.lang.Object> objectList)
          Execute rules using a certain ruleSet and domain specific language using the Stateless rule engine API
 Message executeStatelessRulesFromDecisionTable(java.lang.String decisionTable, boolean ruleReload, Message message, java.util.Map<java.lang.String,java.lang.Object> globals, java.util.List<java.lang.Object> objectList)
          Execute rules from a decision table using the Stateless rule engine API
 Message executeStatelessRulesFromRuleAgent(java.lang.String ruleAgentProperties, Message message, java.util.Map<java.lang.String,java.lang.Object> globals, java.util.List<java.lang.Object> objectList)
          Execute rules using a rule package retrieved via the Rule Agent from a URL of local file system using the Stateless rule engine API
 void setConfigTree(ConfigTree configTree)
           
 

Method Detail

setConfigTree

void setConfigTree(ConfigTree configTree)

executeStatelessRules

Message executeStatelessRules(java.lang.String ruleSet,
                              java.lang.String dsl,
                              boolean ruleReload,
                              Message message,
                              java.util.Map<java.lang.String,java.lang.Object> globals,
                              java.util.List<java.lang.Object> objectList)
                              throws org.jboss.internal.soa.esb.services.rules.RuleServiceException
Execute rules using a certain ruleSet and domain specific language using the Stateless rule engine API

Parameters:
ruleSet - - String reference to a file which contains a ruleSet.
dsl - - String reference to a file which contains a custom rule language definition
ruleReload - - if set to true, a ruleSet update should result in reloading the ruleSet.
message - - Message that is updated with the results.
objectList - - a list with additional objects (typically pulled from the message) to be inserted into working memory
Returns:
Message with updated objects.
Throws:
org.jboss.internal.soa.esb.services.rules.RuleServiceException

executeStatelessRulesFromDecisionTable

Message executeStatelessRulesFromDecisionTable(java.lang.String decisionTable,
                                               boolean ruleReload,
                                               Message message,
                                               java.util.Map<java.lang.String,java.lang.Object> globals,
                                               java.util.List<java.lang.Object> objectList)
                                               throws org.jboss.internal.soa.esb.services.rules.RuleServiceException
Execute rules from a decision table using the Stateless rule engine API

Parameters:
decisionTable - - String reference to a file which contains a spreadsheet of rules
ruleReload - - if set to true, a ruleSet update should result in reloading the ruleSet.
message - - Message that is updated with the results.
objectList - - a list with additional objects (typically pulled from the message) to be inserted into working memory
Returns:
Message with updated objects.
Throws:
org.jboss.internal.soa.esb.services.rules.RuleServiceException

executeStatelessRulesFromRuleAgent

Message executeStatelessRulesFromRuleAgent(java.lang.String ruleAgentProperties,
                                           Message message,
                                           java.util.Map<java.lang.String,java.lang.Object> globals,
                                           java.util.List<java.lang.Object> objectList)
                                           throws org.jboss.internal.soa.esb.services.rules.RuleServiceException
Execute rules using a rule package retrieved via the Rule Agent from a URL of local file system using the Stateless rule engine API

Parameters:
ruleAgentProperties - - String reference to a file which contains properties used by the RuleAgent to locate a rule package.
message - - Message that is updated with the results.
objectList - - a list with additional objects (typically pulled from the message) to be inserted into working memory
Returns:
Message with updated objects.
Throws:
org.jboss.internal.soa.esb.services.rules.RuleServiceException

executeStatefulRules

Message executeStatefulRules(java.lang.String ruleSet,
                             java.lang.String dsl,
                             boolean ruleReload,
                             Message message,
                             java.util.Map<java.lang.String,java.lang.Object> globals,
                             java.util.List<java.lang.Object> objectList)
                             throws org.jboss.internal.soa.esb.services.rules.RuleServiceException
Execute rules using a certain ruleSet and domain specific language using the Stateful rule engine API

Parameters:
ruleSet - - String reference to a file which contains a ruleSet.
dsl - - String reference to a file which contains a custom rule language definition
ruleReload - - if set to true, a ruleSet update should result in reloading the ruleSet.
dispose - - if set to true, working memory will be disposed after the rules are fired
message - - Message that is updated with the results.
objectList - - a list with additional objects (typically pulled from the message) to be inserted into working memory
Returns:
Message with updated objects.
Throws:
org.jboss.internal.soa.esb.services.rules.RuleServiceException

executeStatefulRulesFromDecisionTable

Message executeStatefulRulesFromDecisionTable(java.lang.String decisionTable,
                                              boolean ruleReload,
                                              Message message,
                                              java.util.Map<java.lang.String,java.lang.Object> globals,
                                              java.util.List<java.lang.Object> objectList)
                                              throws org.jboss.internal.soa.esb.services.rules.RuleServiceException
Execute rules from a decision table using the Stateful rule engine API

Parameters:
decisionTable - - String reference to a file which contains a spreadsheet of rules
ruleReload - - if set to true, a ruleSet update should result in reloading the ruleSet.
dispose - - if set to true, working memory will be disposed after the rules are fired
message - - Message that is updated with the results.
objectList - - a list with additional objects (typically pulled from the message) to be inserted into working memory
Returns:
Message with updated objects.
Throws:
org.jboss.internal.soa.esb.services.rules.RuleServiceException

executeStatefulRulesFromRuleAgent

Message executeStatefulRulesFromRuleAgent(java.lang.String ruleAgentProperties,
                                          Message message,
                                          java.util.Map<java.lang.String,java.lang.Object> globals,
                                          java.util.List<java.lang.Object> objectList)
                                          throws org.jboss.internal.soa.esb.services.rules.RuleServiceException
Execute rules using a rule package retrieved via the Rule Agent from a URL of local file system using the Stateful rule engine API

Parameters:
ruleAgentProperties - - String reference to a file which contains properties used by the RuleAgent to locate a rule package.
dispose - - if set to true, working memory will be disposed after the rules are fired
message - - Message that is updated with the results.
objectList - - a list with additional objects (typically pulled from the message)t o be inserted into working memory
Returns:
Message with updated objects.
Throws:
org.jboss.internal.soa.esb.services.rules.RuleServiceException

continueStatefulRulesExecution

Message continueStatefulRulesExecution(java.lang.String rules,
                                       boolean dispose,
                                       Message message,
                                       java.util.Map<java.lang.String,java.lang.Object> globals,
                                       java.util.List<java.lang.Object> objectList)
                                       throws org.jboss.internal.soa.esb.services.rules.RuleServiceException
Continue executing rules where the working memory already exists.

Parameters:
rules - - String reference to a file, either the drl file, the decision table, or the ruleAgentProperties. This is used to find the ruleBase.
dispose - - if set to true, working memory will be disposed after the rules are fired
message - - Message that is updated with the results.
globals - - Map of globals variables that should be set in the working memory
objectList - - a list with additional objects (typically pulled from the message) to be inserted into working memory
Returns:
Message with updated objects.
Throws:
org.jboss.internal.soa.esb.services.rules.RuleServiceException