Index: lams_common/src/java/org/lamsfoundation/lams/commonContext.xml
===================================================================
diff -u -rd9b3433f41c2b25011809144d241d33237d9b9d8 -r2e9ee1c2451a05981f05e9edf89bb3356cf2b147
--- lams_common/src/java/org/lamsfoundation/lams/commonContext.xml (.../commonContext.xml) (revision d9b3433f41c2b25011809144d241d33237d9b9d8)
+++ lams_common/src/java/org/lamsfoundation/lams/commonContext.xml (.../commonContext.xml) (revision 2e9ee1c2451a05981f05e9edf89bb3356cf2b147)
@@ -536,7 +536,28 @@
-
+
+
+
+
+
+
+
+
+
+ true
+
+
+
+
+
+
+
+ PROPAGATION_REQUIRED
+
+
+
+
@@ -680,6 +701,10 @@
+
+
+
+
+
Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java
===================================================================
diff -u -rc87bb47eb670934f10192c08922f83367bc36230 -r2e9ee1c2451a05981f05e9edf89bb3356cf2b147
--- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java (.../McService.java) (revision c87bb47eb670934f10192c08922f83367bc36230)
+++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java (.../McService.java) (revision 2e9ee1c2451a05981f05e9edf89bb3356cf2b147)
@@ -62,6 +62,7 @@
import org.lamsfoundation.lams.notebook.service.ICoreNotebookService;
import org.lamsfoundation.lams.qb.model.QbOption;
import org.lamsfoundation.lams.qb.model.QbQuestion;
+import org.lamsfoundation.lams.qb.service.IQbService;
import org.lamsfoundation.lams.rest.RestTags;
import org.lamsfoundation.lams.rest.ToolRestManager;
import org.lamsfoundation.lams.tool.Tool;
@@ -138,6 +139,7 @@
private IToolContentHandler mcToolContentHandler = null;
private IExportToolContentService exportContentService;
private ICoreNotebookService coreNotebookService;
+ private IQbService qbService;
private MessageService messageService;
@@ -288,7 +290,7 @@
// if it does not exist, create a new one
qbQuestion = new QbQuestion();
qbQuestion.setType(QbQuestion.TYPE_MULTIPLE_CHOICE_SINGLE_ANSWER);
- qbQuestion.setQuestionId(mcQueContentDAO.getMaxQbQuestionId());
+ qbQuestion.setQuestionId(qbService.getMaxQuestionId());
}
// make a clone to check if data changed
QbQuestion qbQuestionClone = qbQuestion.clone();
@@ -327,7 +329,7 @@
// if vital data changed, the already modified clone becomes the new question
qbQuestion = qbQuestionClone;
// create a new question version instead of modifying existing one
- int newVersion = mcQueContentDAO.getMaxQbQuestionVersion(qbQuestion.getQuestionId());
+ int newVersion = qbService.getMaxQuestionVersion(qbQuestion.getQuestionId());
qbQuestion.setVersion(newVersion);
} else {
// if no modification was made, prevent clone from being persisted
@@ -1880,6 +1882,10 @@
this.messageService = messageService;
}
+ public void setQbService(IQbService qbService) {
+ this.qbService = qbService;
+ }
+
@Override
public Class[] getSupportedToolOutputDefinitionClasses(int definitionType) {
return mcOutputFactory.getSupportedDefinitionClasses(definitionType);