From 180a914e91694adaafb89c571c295eb92c3ae4fc Mon Sep 17 00:00:00 2001 From: srosse <stephane.rosse@frentix.com> Date: Wed, 27 May 2020 07:38:25 +0200 Subject: [PATCH] OO-4715: wrong session passed to constructor --- .../repository/handlers/QTISurveyHandler.java | 34 ++++++++---------- .../repository/handlers/QTITestHandler.java | 36 ++++++++----------- 2 files changed, 29 insertions(+), 41 deletions(-) diff --git a/src/main/java/org/olat/ims/qti/repository/handlers/QTISurveyHandler.java b/src/main/java/org/olat/ims/qti/repository/handlers/QTISurveyHandler.java index fe80a809f27..93da79a5da1 100644 --- a/src/main/java/org/olat/ims/qti/repository/handlers/QTISurveyHandler.java +++ b/src/main/java/org/olat/ims/qti/repository/handlers/QTISurveyHandler.java @@ -45,7 +45,6 @@ import org.olat.core.id.Organisation; import org.olat.core.id.Roles; import org.olat.core.logging.AssertException; import org.olat.core.util.Util; -import org.olat.course.assessment.AssessmentMode; import org.olat.course.assessment.manager.UserCourseInformationsManager; import org.olat.course.nodes.iq.IQEditController; import org.olat.course.nodes.iq.QTIResourceTypeModule; @@ -64,7 +63,6 @@ import org.olat.modules.iq.IQSecurityCallback; import org.olat.repository.RepositoryEntry; import org.olat.repository.handlers.EditionSupport; import org.olat.repository.model.RepositoryEntrySecurity; -import org.olat.repository.ui.RepositoryEntryRuntimeController.RuntimeControllerCreator; import org.olat.resource.OLATResource; import org.olat.resource.references.Reference; import org.olat.resource.references.ReferenceManager; @@ -165,25 +163,21 @@ public class QTISurveyHandler extends QTIHandler { @Override public MainLayoutController createLaunchController(RepositoryEntry re, RepositoryEntrySecurity reSecurity, UserRequest ureq, WindowControl wControl) { return new QTIRuntimeController(ureq, wControl, re, reSecurity, - new RuntimeControllerCreator() { - @Override - public Controller create(UserRequest uureq, WindowControl wwControl, TooledStackedPanel toolbarPanel, - RepositoryEntry entry, RepositoryEntrySecurity security, AssessmentMode assessmentMode) { - Controller runController; - OLATResource res = entry.getOlatResource(); - CoreSpringFactory.getImpl(UserCourseInformationsManager.class) - .updateUserCourseInformations(entry.getOlatResource(), uureq.getIdentity()); - if (QTIResourceTypeModule.isOnyxTest(res)) { - Translator trans = Util.createPackageTranslator(IQEditController.class, ureq.getLocale()); - runController = MessageUIFactory.createInfoMessage(ureq, wControl, "", trans.translate("error.onyx")); - } else { - Resolver resolver = new ImsRepositoryResolver(entry); - IQSecurityCallback secCallback = new IQPreviewSecurityCallback(); - runController = CoreSpringFactory.getImpl(IQManager.class) - .createIQDisplayController(res, resolver, AssessmentInstance.QMD_ENTRY_TYPE_SURVEY, secCallback, uureq, wwControl); - } - return runController; + (uureq, wwControl, toolbarPanel, entry, security, assessmentMode) -> { + Controller runController; + OLATResource res = entry.getOlatResource(); + CoreSpringFactory.getImpl(UserCourseInformationsManager.class) + .updateUserCourseInformations(entry.getOlatResource(), uureq.getIdentity()); + if (QTIResourceTypeModule.isOnyxTest(res)) { + Translator trans = Util.createPackageTranslator(IQEditController.class, ureq.getLocale()); + runController = MessageUIFactory.createInfoMessage(ureq, wControl, "", trans.translate("error.onyx")); + } else { + Resolver resolver = new ImsRepositoryResolver(entry); + IQSecurityCallback secCallback = new IQPreviewSecurityCallback(); + runController = CoreSpringFactory.getImpl(IQManager.class) + .createIQDisplayController(res, resolver, AssessmentInstance.QMD_ENTRY_TYPE_SURVEY, secCallback, uureq, wwControl); } + return runController; }); } diff --git a/src/main/java/org/olat/ims/qti/repository/handlers/QTITestHandler.java b/src/main/java/org/olat/ims/qti/repository/handlers/QTITestHandler.java index cf5c7c4eac0..03982d2c206 100644 --- a/src/main/java/org/olat/ims/qti/repository/handlers/QTITestHandler.java +++ b/src/main/java/org/olat/ims/qti/repository/handlers/QTITestHandler.java @@ -45,7 +45,6 @@ import org.olat.core.id.Organisation; import org.olat.core.id.Roles; import org.olat.core.logging.AssertException; import org.olat.core.util.Util; -import org.olat.course.assessment.AssessmentMode; import org.olat.course.assessment.manager.UserCourseInformationsManager; import org.olat.course.nodes.iq.IQEditController; import org.olat.course.nodes.iq.QTIResourceTypeModule; @@ -64,7 +63,6 @@ import org.olat.modules.iq.IQSecurityCallback; import org.olat.repository.RepositoryEntry; import org.olat.repository.handlers.EditionSupport; import org.olat.repository.model.RepositoryEntrySecurity; -import org.olat.repository.ui.RepositoryEntryRuntimeController.RuntimeControllerCreator; import org.olat.resource.OLATResource; import org.olat.resource.references.Reference; import org.olat.resource.references.ReferenceManager; @@ -166,26 +164,22 @@ public class QTITestHandler extends QTIHandler { @Override public MainLayoutController createLaunchController(RepositoryEntry re, RepositoryEntrySecurity reSecurity, UserRequest ureq, WindowControl wControl) { return new QTIRuntimeController(ureq, wControl, re, reSecurity, - new RuntimeControllerCreator() { - @Override - public Controller create(UserRequest uureq, WindowControl wwControl, TooledStackedPanel toolbarPanel, - RepositoryEntry entry, RepositoryEntrySecurity security, AssessmentMode assessmentMode) { - Controller runController; - OLATResource res = entry.getOlatResource(); - CoreSpringFactory.getImpl(UserCourseInformationsManager.class) - .updateUserCourseInformations(entry.getOlatResource(), uureq.getIdentity()); - if (QTIResourceTypeModule.isOnyxTest(res)) { - Translator trans = Util.createPackageTranslator(IQEditController.class, ureq.getLocale()); - runController = MessageUIFactory.createInfoMessage(ureq, wControl, "", trans.translate("error.onyx")); - } else { - Resolver resolver = new ImsRepositoryResolver(entry); - IQSecurityCallback secCallback = new IQPreviewSecurityCallback(); - runController = CoreSpringFactory.getImpl(IQManager.class) - .createIQDisplayController(res, resolver, AssessmentInstance.QMD_ENTRY_TYPE_SELF, secCallback, uureq, wwControl); - } - return runController; + (uureq, wwControl, toolbarPanel, entry, security, assessmentMode) -> { + Controller runController; + OLATResource res = entry.getOlatResource(); + CoreSpringFactory.getImpl(UserCourseInformationsManager.class) + .updateUserCourseInformations(entry.getOlatResource(), uureq.getIdentity()); + if (QTIResourceTypeModule.isOnyxTest(res)) { + Translator trans = Util.createPackageTranslator(IQEditController.class, uureq.getLocale()); + runController = MessageUIFactory.createInfoMessage(uureq, wwControl, "", trans.translate("error.onyx")); + } else { + Resolver resolver = new ImsRepositoryResolver(entry); + IQSecurityCallback secCallback = new IQPreviewSecurityCallback(); + runController = CoreSpringFactory.getImpl(IQManager.class) + .createIQDisplayController(res, resolver, AssessmentInstance.QMD_ENTRY_TYPE_SELF, secCallback, uureq, wwControl); } - }); + return runController; + }); } @Override -- GitLab