From 5b9f893ad4cb012ed111c1c19bfab90e78d7d306 Mon Sep 17 00:00:00 2001
From: srosse <none@none>
Date: Wed, 27 Feb 2013 11:40:20 +0100
Subject: [PATCH] OO-538: course wizard must hold the course from the course
 factory if it open a new edit session

---
 .../wizard/helper/course/CourseExtensionHelper.java       | 8 ++++----
 .../workflows/coursecreation/CourseCreationHelper.java    | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/main/java/de/tuchemnitz/wizard/helper/course/CourseExtensionHelper.java b/src/main/java/de/tuchemnitz/wizard/helper/course/CourseExtensionHelper.java
index e51d7bba238..7f8f2ed9599 100644
--- a/src/main/java/de/tuchemnitz/wizard/helper/course/CourseExtensionHelper.java
+++ b/src/main/java/de/tuchemnitz/wizard/helper/course/CourseExtensionHelper.java
@@ -118,7 +118,7 @@ public class CourseExtensionHelper {
 	 * @param longTitle long title for node
 	 * @return created course node
 	 */
-	private static final CourseNode createNode(final ICourse course, final String shortTitle, final String longTitle, final String type) {
+	private static final CourseNode createNode(ICourse course, final String shortTitle, final String longTitle, final String type) {
 		// create a node with default data
 		CourseNodeConfiguration nodeConfig = CourseNodeFactory.getInstance().getCourseNodeConfiguration(type);
 		CourseNode node = nodeConfig.getInstance();
@@ -126,7 +126,7 @@ public class CourseExtensionHelper {
 		node.setLongTitle(longTitle);
 
 		// append node to course
-		CourseFactory.openCourseEditSession(course.getResourceableId());
+		course = CourseFactory.openCourseEditSession(course.getResourceableId());
 		final CourseEditorTreeModel cetm = course.getEditorTreeModel();
 		final CourseNode rootNode = cetm.getCourseNode(course.getRunStructure().getRootNode().getIdent());
 		course.getEditorTreeModel().addCourseNode(node, rootNode);
@@ -143,8 +143,8 @@ public class CourseExtensionHelper {
 	 * @param node node to be removed
 	 * @param course course where the node belongs to
 	 */
-	public static final void removeNode(final CourseNode node, final ICourse course) {
-		CourseFactory.openCourseEditSession(course.getResourceableId());
+	public static final void removeNode(final CourseNode node, ICourse course) {
+		course = CourseFactory.openCourseEditSession(course.getResourceableId());
 		course.getEditorTreeModel().removeCourseNode(node);
 		CourseFactory.saveCourseEditorTreeModel(course.getResourceableId());
 		CourseFactory.closeCourseEditSession(course.getResourceableId(), true);
diff --git a/src/main/java/de/tuchemnitz/wizard/workflows/coursecreation/CourseCreationHelper.java b/src/main/java/de/tuchemnitz/wizard/workflows/coursecreation/CourseCreationHelper.java
index fa845ab7519..c049004d67a 100644
--- a/src/main/java/de/tuchemnitz/wizard/workflows/coursecreation/CourseCreationHelper.java
+++ b/src/main/java/de/tuchemnitz/wizard/workflows/coursecreation/CourseCreationHelper.java
@@ -302,7 +302,7 @@ public class CourseCreationHelper {
 			addedEntry = RepositoryManager.getInstance().setAccess(addedEntry, access, false);
 		}
 
-		CourseFactory.openCourseEditSession(course.getResourceableId());
+		course = CourseFactory.openCourseEditSession(course.getResourceableId());
 		course.getRunStructure().getRootNode().setShortTitle(addedEntry.getDisplayname());
 		course.getRunStructure().getRootNode().setLongTitle(addedEntry.getDisplayname());
 		CourseFactory.saveCourse(course.getResourceableId());
-- 
GitLab