[jboss-svn-commits] JBL Code SVN: r32377 - labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/persistence.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Apr 3 12:47:18 EDT 2010


Author: ge0ffrey
Date: 2010-04-03 12:47:17 -0400 (Sat, 03 Apr 2010)
New Revision: 32377

Modified:
   labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/persistence/NurseRosteringEvaluatorHelper.java
Log:
nurse rostering: evaluator helper (count vs total)

Modified: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/persistence/NurseRosteringEvaluatorHelper.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/persistence/NurseRosteringEvaluatorHelper.java	2010-04-03 16:39:27 UTC (rev 32376)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/persistence/NurseRosteringEvaluatorHelper.java	2010-04-03 16:47:17 UTC (rev 32377)
@@ -47,13 +47,13 @@
 
     private static class EvaluatorSummaryFilterOutputStream extends FilterOutputStream {
 
+        private static final String EXCESS_PATTERN = "excess = ";
+        
         private StringBuilder lineBuffer = new StringBuilder(120);
-        private Map<String, Integer> excessMap;
-        private static final String EXCESS_PATTERN = "excess = ";
+        private Map<String, int[]> excessMap = new LinkedHashMap<String, int[]>();
 
         private EvaluatorSummaryFilterOutputStream() {
             super(System.out);
-            excessMap = new LinkedHashMap<String, Integer>();
         }
 
         @Override
@@ -72,21 +72,23 @@
             if (excessIndex >= 0) {
                 String key = line.substring(0, excessIndex);
                 int value = Integer.parseInt(line.substring(excessIndex).replaceAll("excess = (\\d+) .*", "$1"));
-                Integer count = excessMap.get(key);
-                if (count == null) {
-                    count = value;
+                int[] excess = excessMap.get(key);
+                if (excess == null) {
+                    excess = new int[]{0, value};
+                    excessMap.put(key, excess);
                 } else {
-                    count += value;
+                    excess[0]++;
+                    excess[1] += value;
                 }
-                excessMap.put(key, count);
             }
         }
 
         public void writeResults() {
             System.out.println("EvaluatorHelper results");
             System.out.println("=======================");
-            for (Map.Entry<String, Integer> entry : excessMap.entrySet()) {
-                System.out.println(entry.getKey() + " count = " + entry.getValue());
+            for (Map.Entry<String, int[]> entry : excessMap.entrySet()) {
+                int[] excess = entry.getValue();
+                System.out.println(entry.getKey() + " count = " + excess[0] + " total = " + excess[1]);
             }
         }
     }



More information about the jboss-svn-commits mailing list