Index: lams_tool_forum/conf/hibernate/mappings/org/lamsfoundation/lams/tool/forum/persistence/ForumCondition.hbm.xml =================================================================== diff -u -rae0c7acab6ce68608316177b97120a6bc189b94f -r7af0a437b323d3d479c87d6a8884125213dc4411 --- lams_tool_forum/conf/hibernate/mappings/org/lamsfoundation/lams/tool/forum/persistence/ForumCondition.hbm.xml (.../ForumCondition.hbm.xml) (revision ae0c7acab6ce68608316177b97120a6bc189b94f) +++ lams_tool_forum/conf/hibernate/mappings/org/lamsfoundation/lams/tool/forum/persistence/ForumCondition.hbm.xml (.../ForumCondition.hbm.xml) (revision 7af0a437b323d3d479c87d6a8884125213dc4411) @@ -19,6 +19,7 @@ lazy="false" inverse="false" sort="unsorted" + cascade="save-update" order-by="topic_uid asc" > Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumOutputFactory.java =================================================================== diff -u -rb036e6dd6d2afe9c0e0b9143c9be3af1d53a1e0e -r7af0a437b323d3d479c87d6a8884125213dc4411 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumOutputFactory.java (.../ForumOutputFactory.java) (revision b036e6dd6d2afe9c0e0b9143c9be3af1d53a1e0e) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumOutputFactory.java (.../ForumOutputFactory.java) (revision 7af0a437b323d3d479c87d6a8884125213dc4411) @@ -22,6 +22,7 @@ package org.lamsfoundation.lams.tool.forum.service; +import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -31,6 +32,7 @@ import java.util.TreeMap; import java.util.TreeSet; +import org.lamsfoundation.lams.learningdesign.BranchCondition; import org.lamsfoundation.lams.tool.OutputFactory; import org.lamsfoundation.lams.tool.ToolOutput; import org.lamsfoundation.lams.tool.ToolOutputDefinition; @@ -63,19 +65,18 @@ switch (definitionType) { case ToolOutputDefinition.DATA_OUTPUT_DEFINITION_TYPE_CONDITION: -// if (toolContentObject != null) { -// Class topicDatesToAnswersClass = (new HashMap>()).getClass(); -// ToolOutputDefinition chosenTopicAnswersDefinition = buildComplexOutputDefinition( -// ForumConstants.TOPIC_DATE_TO_ANSWERS_DEFINITION_NAME, topicDatesToAnswersClass); -// Forum forum = (Forum) toolContentObject; -// -// // adding all existing conditions -// chosenTopicAnswersDefinition -// .setDefaultConditions(new ArrayList(forum.getConditions())); -// -// definitionMap.put(ForumConstants.TOPIC_DATE_TO_ANSWERS_DEFINITION_NAME, -// chosenTopicAnswersDefinition); -// } + if (toolContentObject != null) { + Class topicDatesToAnswersClass = (new HashMap>()).getClass(); + ToolOutputDefinition chosenTopicAnswersDefinition = buildComplexOutputDefinition( + ForumConstants.TOPIC_DATE_TO_ANSWERS_DEFINITION_NAME, topicDatesToAnswersClass); + Forum forum = (Forum) toolContentObject; + + // adding all existing conditions + chosenTopicAnswersDefinition.setConditions(new ArrayList(forum.getConditions())); + + definitionMap.put(ForumConstants.TOPIC_DATE_TO_ANSWERS_DEFINITION_NAME, + chosenTopicAnswersDefinition); + } ToolOutputDefinition numberOfPostsDefinition = buildRangeDefinition( ForumConstants.LEARNER_NUM_POSTS_DEFINITION_NAME, new Long(0), null); definitionMap.put(ForumConstants.LEARNER_NUM_POSTS_DEFINITION_NAME, numberOfPostsDefinition); Index: lams_tool_laqa/conf/hibernate/mappings/org/lamsfoundation/lams/tool/qa/QaCondition.hbm.xml =================================================================== diff -u -r55645d4b796f36715b66a70fce66406a986ee647 -r7af0a437b323d3d479c87d6a8884125213dc4411 --- lams_tool_laqa/conf/hibernate/mappings/org/lamsfoundation/lams/tool/qa/QaCondition.hbm.xml (.../QaCondition.hbm.xml) (revision 55645d4b796f36715b66a70fce66406a986ee647) +++ lams_tool_laqa/conf/hibernate/mappings/org/lamsfoundation/lams/tool/qa/QaCondition.hbm.xml (.../QaCondition.hbm.xml) (revision 7af0a437b323d3d479c87d6a8884125213dc4411) @@ -18,7 +18,7 @@ table="tl_laqa11_condition_questions" lazy="false" inverse="false" - cascade="all" + cascade="save-update" sort="unsorted" order-by="question_uid asc" > Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/QaOutputFactory.java =================================================================== diff -u -rb036e6dd6d2afe9c0e0b9143c9be3af1d53a1e0e -r7af0a437b323d3d479c87d6a8884125213dc4411 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/QaOutputFactory.java (.../QaOutputFactory.java) (revision b036e6dd6d2afe9c0e0b9143c9be3af1d53a1e0e) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/QaOutputFactory.java (.../QaOutputFactory.java) (revision 7af0a437b323d3d479c87d6a8884125213dc4411) @@ -68,14 +68,13 @@ Class arrayofStringArraysClass = String[][].class; switch (definitionType) { case ToolOutputDefinition.DATA_OUTPUT_DEFINITION_TYPE_CONDITION: -// ToolOutputDefinition userAnswersDefinition = buildComplexOutputDefinition( -// QaAppConstants.USER_ANSWERS_DEFINITION_NAME, stringArrayClass); -// -// // adding all existing conditions -// userAnswersDefinition -// .setDefaultConditions(new ArrayList(qaContent.getConditions())); -// definitionMap.put(QaAppConstants.USER_ANSWERS_DEFINITION_NAME, userAnswersDefinition); + ToolOutputDefinition userAnswersDefinition = buildComplexOutputDefinition( + QaAppConstants.USER_ANSWERS_DEFINITION_NAME, stringArrayClass); + // adding all existing conditions + userAnswersDefinition.setConditions(new ArrayList(qaContent.getConditions())); + definitionMap.put(QaAppConstants.USER_ANSWERS_DEFINITION_NAME, userAnswersDefinition); + break; case ToolOutputDefinition.DATA_OUTPUT_DEFINITION_TYPE_DATA_FLOW: ToolOutputDefinition groupAnswersDefinition = buildComplexOutputDefinition(