Changeset 3992
- Timestamp:
- 04/22/08 17:13:11 (7 months ago)
- Files:
-
- openmrs-modules/dss/src/org/openmrs/module/dss/DssManager.java (modified) (1 diff)
- openmrs-modules/dss/src/org/openmrs/module/dss/impl/DssServiceImpl.java (modified) (6 diffs)
- openmrs-modules/dss/src/org/openmrs/module/dss/service/DssService.java (modified) (7 diffs)
- openmrs-modules/dss/test/ArdenServiceTest.java (modified) (1 diff)
- openmrs-modules/dss/web/src/org/openmrs/module/dss/web/RunRulesController.java (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
openmrs-modules/dss/src/org/openmrs/module/dss/DssManager.java
r3599 r3992 101 101 102 102 results = dssService.runRules(this.patient, ruleList, 103 defaultPackagePrefix );103 defaultPackagePrefix,null); 104 104 105 105 for (int i = 0; i < processedRules.size() && openmrs-modules/dss/src/org/openmrs/module/dss/impl/DssServiceImpl.java
r3989 r3992 62 62 63 63 public String runRulesAsString(Patient p, 64 ArrayList<Rule> ruleList,String defaultPackagePrefix) 64 ArrayList<Rule> ruleList, 65 String defaultPackagePrefix,String rulePackagePrefix) 65 66 { 66 67 return this.runRulesAsString(p, ruleList, 67 Context.getLogicService(),defaultPackagePrefix); 68 Context.getLogicService(),defaultPackagePrefix, 69 rulePackagePrefix); 68 70 } 69 71 70 72 public String runRulesAsString(Patient p, 71 73 ArrayList<Rule> ruleList, LogicService logicService, 72 String defaultPackagePrefix) 73 { 74 ArrayList<Result> results = this.runRules(p, ruleList,defaultPackagePrefix); 74 String defaultPackagePrefix,String rulePackagePrefix) 75 { 76 ArrayList<Result> results = this.runRules(p, ruleList, 77 defaultPackagePrefix,rulePackagePrefix); 75 78 String reply = ""; 76 79 … … 90 93 } 91 94 92 public Result runRule(Patient p, Rule rule,String defaultPackagePrefix) 95 public Result runRule(Patient p, Rule rule, 96 String defaultPackagePrefix,String rulePackagePrefix) 93 97 { 94 98 return this.runRule(p, rule, 95 Context.getLogicService(),defaultPackagePrefix); 99 Context.getLogicService(), 100 defaultPackagePrefix,rulePackagePrefix); 96 101 } 97 102 98 103 public Result runRule(Patient p, Rule rule, 99 LogicService logicService, String defaultPackagePrefix) 104 LogicService logicService, 105 String defaultPackagePrefix,String rulePackagePrefix) 100 106 { 101 107 ArrayList<Rule> ruleList = new ArrayList<Rule>(); … … 103 109 104 110 ArrayList<Result> results = 105 this.runRules(p, ruleList, logicService,defaultPackagePrefix );111 this.runRules(p, ruleList, logicService,defaultPackagePrefix,rulePackagePrefix); 106 112 107 113 if(results != null && results.size()>0) … … 114 120 115 121 public ArrayList<Result> runRules(Patient p, 116 ArrayList<Rule> ruleList, String defaultPackagePrefix) 122 ArrayList<Rule> ruleList, String defaultPackagePrefix, 123 String rulePackagePrefix) 117 124 { 118 125 return this.runRules(p, ruleList, Context.getLogicService(), 119 defaultPackagePrefix );126 defaultPackagePrefix,rulePackagePrefix); 120 127 } 121 128 122 129 public ArrayList<Result> runRules(Patient p, 123 130 ArrayList<Rule> ruleList,LogicService logicSvc, 124 String default RulePrefix)131 String defaultPackagePrefix,String rulePackagePrefix) 125 132 { 126 133 ArrayList<Result> results = new ArrayList<Result>(); … … 139 146 try 140 147 { 141 this.loadRule(ruleName,default RulePrefix);148 this.loadRule(ruleName,defaultPackagePrefix,rulePackagePrefix); 142 149 } catch (Exception e1) 143 150 { … … 175 182 public void loadRule(String rule) throws Exception 176 183 { 177 this.loadRule(rule,null); 178 } 179 180 public void loadRule(String rule, String defaultPackagePrefix) 181 throws Exception 182 { 183 AdministrationService adminService = Context.getAdministrationService(); 184 String rulePackagePrefix = Util.processPackagePrefix(adminService 185 .getGlobalProperty("dss.rulePackagePrefix")); 186 this.loadRule(rule, defaultPackagePrefix, rulePackagePrefix); 187 } 188 189 public void loadRule(String rule, String defaultPackagePrefix,String rulePackagePrefix ) throws Exception 184 this.loadRule(rule,null,null); 185 } 186 187 public void loadRule(String rule, String defaultPackagePrefix, 188 String rulePackagePrefix) throws Exception 190 189 { 191 190 // Create a CompilingClassLoader 192 191 CompilingClassLoader ccl = new CompilingClassLoader(); 193 192 193 AdministrationService adminService = 194 Context.getAdministrationService(); 195 if (rulePackagePrefix == null) 196 { 197 rulePackagePrefix = Util.processPackagePrefix(adminService 198 .getGlobalProperty("dss.rulePackagePrefix")); 199 } 200 194 201 Class clas = null; 195 202 openmrs-modules/dss/src/org/openmrs/module/dss/service/DssService.java
r3989 r3992 27 27 */ 28 28 public String runRulesAsString(Patient p, ArrayList<Rule> ruleList, 29 String defaultPackagePrefix );29 String defaultPackagePrefix,String rulePackagePrefix); 30 30 31 31 /** … … 38 38 */ 39 39 public String runRulesAsString(Patient p, ArrayList<Rule> ruleList, 40 LogicService logicService, String defaultPackagePrefix); 40 LogicService logicService, 41 String defaultPackagePrefix,String rulePackagePrefix); 41 42 42 43 /** … … 47 48 * @return String result as an openmrs Result object 48 49 */ 49 public Result runRule(Patient p, Rule rule, String defaultPackagePrefix); 50 public Result runRule(Patient p, Rule rule, 51 String defaultPackagePrefix,String rulePackagePrefix); 50 52 51 53 /** … … 58 60 */ 59 61 public Result runRule(Patient p, Rule rule, LogicService logicService, 60 String defaultPackagePrefix );62 String defaultPackagePrefix,String rulePackagePrefix); 61 63 62 64 /** … … 68 70 */ 69 71 public ArrayList<Result> runRules(Patient p, ArrayList<Rule> ruleList, 70 String defaultPackagePrefix );72 String defaultPackagePrefix,String rulePackagePrefix); 71 73 72 74 /** … … 75 77 * @param ruleList list of rules to evaluate 76 78 * @param logicSvc custom logic service 77 * @param default RulePrefix package to look in for pre-compiled rules79 * @param defaultPackagePrefix package to look in for pre-compiled rules 78 80 * @return ArrayList of openmrs Result objects 79 81 */ 80 82 public ArrayList<Result> runRules(Patient p, ArrayList<Rule> ruleList, 81 LogicService logicSvc, String defaultRulePrefix); 83 LogicService logicSvc, String defaultPackagePrefix, 84 String rulePackagePrefix); 82 85 83 86 /** … … 131 134 132 135 /** 133 * Loads a rule into the openmrs LogicService in preparation for executing it134 * @param rule name that the rule will be stored under in the openmrs LogicService135 * @param defaultPackagePrefix package to look in for pre-compiled rules136 * @throws Exception137 */138 public void loadRule(String rule, String defaultPackagePrefix)139 throws Exception;140 141 /**142 136 * This method tries to load a class based on the rule name and a set of package names 143 137 * First, it tries to load the rule from the rulePackagePrefix package. By default, this package openmrs-modules/dss/test/ArdenServiceTest.java
r3597 r3992 57 57 58 58 String result = dssService.runRulesAsString(patient, ruleList, 59 "org.openmrs.module.atd.ruleLibrary." );59 "org.openmrs.module.atd.ruleLibrary.",null); 60 60 System.out.println("result is: "+result); 61 61 } openmrs-modules/dss/web/src/org/openmrs/module/dss/web/RunRulesController.java
r3614 r3992 59 59 } 60 60 ArrayList<Result> results = dssService.runRules(patient, 61 ruleList,"org.openmrs.module.atd.ruleLibrary." );61 ruleList,"org.openmrs.module.atd.ruleLibrary.",null); 62 62 if (results != null) 63 63 {