private IAction ProcessActionNode(XmlNode actionNode) { AbstractActionManager actionManager = RuleEngine.GetActionManager(); string actionName = actionNode.Attributes[RuleFileConstants.Name].InnerText; Dictionary <string, string> parameters = GetActionParameters(actionNode); return(actionManager.CreateAction(actionName, parameters)); }
public static void InitRuleEngine(AbstractActionManager actionManager, AbstractCategoryManager categoryManager, AbstractConditionManager conditionManager, AbstractOperatorManager operatorManager) { s_actionManager = actionManager; s_categoryManager = categoryManager; s_conditionManager = conditionManager; s_operatorManager = operatorManager; }
public static void InitRuleEngine(AbstractActionManager actionManager, AbstractCategoryManager categoryManager, AbstractConditionManager conditionManager, AbstractOperatorManager operatorManager) { s_actionManager = actionManager; s_categoryManager = categoryManager; s_conditionManager = conditionManager; s_operatorManager = operatorManager; }
private XmlNode WriteActionToXmlNode(IAction action) { // <Action> XmlElement actionNode = m_doc.CreateElement(RuleFileConstants.ActionElementName); actionNode.SetAttribute(RuleFileConstants.Name, action.GetActionDef().GetActionName()); AbstractActionManager actionManager = RuleEngine.GetActionManager(); IActionDef actionDef = actionManager.GetActionDef(action.GetActionDef().GetActionName()); List <string> paramList = actionDef.GetParameterNames(); foreach (string paramName in paramList) { // <Param> XmlElement newNameParamNode = m_doc.CreateElement(RuleFileConstants.Parameter); newNameParamNode.SetAttribute(RuleFileConstants.Key, paramName); newNameParamNode.SetAttribute(RuleFileConstants.Value, action.GetParameterValue(paramName)); actionNode.AppendChild(newNameParamNode); } return(actionNode); }