[jboss-svn-commits] JBL Code SVN: r17840 - labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/itc2007/examination/persistence.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Jan 14 16:05:47 EST 2008
Author: ge0ffrey
Date: 2008-01-14 16:05:46 -0500 (Mon, 14 Jan 2008)
New Revision: 17840
Modified:
labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/itc2007/examination/persistence/ExaminationInputConvertor.java
Log:
new inputconverter spec guidelines for frontload
Modified: labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/itc2007/examination/persistence/ExaminationInputConvertor.java
===================================================================
--- labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/itc2007/examination/persistence/ExaminationInputConvertor.java 2008-01-14 20:56:41 UTC (rev 17839)
+++ labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/itc2007/examination/persistence/ExaminationInputConvertor.java 2008-01-14 21:05:46 UTC (rev 17840)
@@ -294,8 +294,8 @@
Collections.sort(sortedTopicList, new Comparator<Topic>() {
public int compare(Topic a, Topic b) {
return new CompareToBuilder()
- .append(a.getStudentListSize(), b.getStudentListSize())
- .append(a.getId(), b.getId())
+ .append(a.getStudentListSize(), b.getStudentListSize()) // Ascending
+ .append(b.getId(), a.getId()) // Descending (according to spec)
.toComparison();
}
});
@@ -303,12 +303,16 @@
if (frontLoadLargeTopicSize == 0) {
return;
}
+ int minimumTopicId = sortedTopicList.size() - frontLoadLargeTopicSize;
+ if (minimumTopicId < 0) {
+ logger.warn("The frontLoadLargeTopicSize (" + frontLoadLargeTopicSize + ") is bigger than topicListSize ("
+ + sortedTopicList.size() + "). Tagging all topic as frontLoadLarge...");
+ minimumTopicId = 0;
+ }
int minimumStudentListSize = sortedTopicList.get(sortedTopicList.size() - frontLoadLargeTopicSize)
.getStudentListSize();
- for (Topic topic : sortedTopicList) {
- if (topic.getStudentListSize() >= minimumStudentListSize) {
- topic.setFrontLoadLarge(true);
- }
+ for (Topic topic : sortedTopicList.subList(minimumStudentListSize, sortedTopicList.size())) {
+ topic.setFrontLoadLarge(true);
}
}
@@ -321,7 +325,7 @@
int minimumPeriodId = periodList.size() - frontLoadLastPeriodSize;
if (minimumPeriodId < 0) {
logger.warn("The frontLoadLastPeriodSize (" + frontLoadLastPeriodSize + ") is bigger than periodListSize ("
- + periodList.size() + "). Tagging all periods as large...");
+ + periodList.size() + "). Tagging all periods as frontLoadLast...");
minimumPeriodId = 0;
}
for (Period period : periodList.subList(minimumPeriodId, periodList.size())) {
More information about the jboss-svn-commits
mailing list