Index: lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/Workspace.hbm.xml
===================================================================
diff -u -r8a4d69bf6159f6bcd910eb930d77016e255619e9 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/Workspace.hbm.xml (.../Workspace.hbm.xml) (revision 8a4d69bf6159f6bcd910eb930d77016e255619e9)
+++ lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/Workspace.hbm.xml (.../Workspace.hbm.xml) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -113,13 +113,16 @@
-
-
-
-
+
+
+ @hibernate.set inverse="false" cascade="all-delete-orphan"
+ @hibernate.collection-key column="workspace_id"
+ @hibernate.collection-one-to-many class="org.lamsfoundation.lams.usermanagement.WorkspaceWorkspaceFolder"
+
+
+
-
+
-
-
-
-
+
+
+ @hibernate.set inverse="false" cascade="all-delete-orphan"
+ @hibernate.collection-key column="workspace_folder_id"
+ @hibernate.collection-one-to-many class="org.lamsfoundation.lams.usermanagement.WorkspaceWorkspaceFolder"
+
+
+
Index: lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/WorkspaceWorkspaceFolder.hbm.xml
===================================================================
diff -u
--- lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/WorkspaceWorkspaceFolder.hbm.xml (revision 0)
+++ lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/WorkspaceWorkspaceFolder.hbm.xml (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+ @hibernate.class
+ table="lams_workspace_workspace_folder"
+
+ true
+
+
+
+ @hibernate.id
+ generator-class="native"
+ type="java.lang.Integer"
+ column="id"
+
+ true
+
+
+
+
+
+
+ @hibernate.many-to-one
+ not-null="true"
+ lazy="false"
+ @hibernate.column name="workspace_id"
+
+
+
+
+
+
+
+ @hibernate.many-to-one
+ not-null="true"
+ lazy="false"
+ @hibernate.column name="workspace_folder_id"
+
+
+
+
+
+
Index: lams_common/db/model/lams_11.clay
===================================================================
diff -u -r2b636f4e834cd0b45c00bb3abf6a6b5e5f3161c8 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/db/model/lams_11.clay (.../lams_11.clay) (revision 2b636f4e834cd0b45c00bb3abf6a6b5e5f3161c8)
+++ lams_common/db/model/lams_11.clay (.../lams_11.clay) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -1,2667 +1,2667 @@
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
When a lesson is started, the authored design is considered the orginial learning design
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -2670,412 +2670,412 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
+
Unique signature for each version of a tool. <organisation><tool><version>
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
+
Unique identifier for the tool. This should remain the same for every version of the tool.
It will be used for the IMS LD import/export.
-
-
-
+
+
+
-
+
Version of tool. Expected to be in format [major version.minor version] eg 1.2
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -3084,163 +3084,163 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -3249,53 +3249,53 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -3304,53 +3304,53 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -3359,86 +3359,86 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -3447,78 +3447,78 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
@@ -3527,51 +3527,51 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -3580,51 +3580,51 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -3633,309 +3633,309 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
+
There will usually be 0 or 1 workspace for each tool in LAMS, so this should be a pretty small table.
The main lookup is done on name, but given the small number of rows a complete table scan
should be fine. A name index would probably be about the same size as the table anyway.
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
+
Like lams_cr_workspace, there will usually be 0 or 1 workspace for each tool in LAMS, so this should be a pretty small table.
The main lookup is done on name, but given the small number of rows a complete table scan should be fine.
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -3944,67 +3944,67 @@
-
+
Has a "dummy" id nv_id (node version id) which is unique for all node_id and version_id combinations.
It is the node_id and version_id combination that is the "real" key for this table.
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
@@ -4013,72 +4013,72 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
@@ -4087,104 +4087,104 @@
-
+
A node can only belong to one parent - so each time a new version of a package is created, all the nodes are recreated.
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
@@ -4193,150 +4193,150 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
@@ -4345,170 +4345,170 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -4517,105 +4517,105 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
@@ -4624,79 +4624,79 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
@@ -4705,47 +4705,47 @@
-
+
All the lams_css_property values matching this lams_css_style make up the CSSStyleDeclaration for this
style. It may be a "base" style for a theme, or it may be for a named visual element.
Each style may have a subset of properties, such as "_tf"
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
@@ -4754,111 +4754,111 @@
-
+
Url details for system tools such as gates and grouping
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
+
Unique signature for each version of a tool. <organisation><tool><version>
-
-
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -4867,110 +4867,110 @@
-
+
Individual permissions, such as read access to a content folder.
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
+
Link table between lams_role and lams_privilege.
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -4979,84 +4979,98 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
+
-
-
+
+
-
-
+
+
@@ -5065,87 +5079,87 @@
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
+
-
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
Index: lams_common/db/sql/create_lams_11_tables.sql
===================================================================
diff -u -r2b636f4e834cd0b45c00bb3abf6a6b5e5f3161c8 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/db/sql/create_lams_11_tables.sql (.../create_lams_11_tables.sql) (revision 2b636f4e834cd0b45c00bb3abf6a6b5e5f3161c8)
+++ lams_common/db/sql/create_lams_11_tables.sql (.../create_lams_11_tables.sql) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -200,8 +200,10 @@
)TYPE=InnoDB;
CREATE TABLE lams_workspace_workspace_folder (
- workspace_id BIGINT(20) NOT NULL
+ id BIGINT(20) NOT NULL AUTO_INCREMENT
+ , workspace_id BIGINT(20) NOT NULL
, workspace_folder_id BIGINT(20) NOT NULL
+ , PRIMARY KEY (id)
, INDEX (workspace_id)
, CONSTRAINT FK_lams_workspace_workspace_folder_1 FOREIGN KEY (workspace_id)
REFERENCES lams_workspace (workspace_id)
Index: lams_common/db/sql/insert_users.sql
===================================================================
diff -u -r4f5fee3a9b7811fe63a3b367610bd79ba233c596 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/db/sql/insert_users.sql (.../insert_users.sql) (revision 4f5fee3a9b7811fe63a3b367610bd79ba233c596)
+++ lams_common/db/sql/insert_users.sql (.../insert_users.sql) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -56,16 +56,16 @@
insert into lams_workspace_folder (workspace_folder_id,parent_folder_id,name,user_id,create_date_time,last_modified_date_time,lams_workspace_folder_type_id)
values(8,null,'Four Test Workspace',8,'20041223','20041223',1);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (1,1);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (2,2);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (2,22);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (3,3);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (3,23);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (4,4);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (5,5);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (6,6);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (7,7);
-insert into lams_workspace_workspace_folder (workspace_id, workspace_folder_id) values (8,8);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (1, 1,1);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (2, 2,2);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (3, 2,22);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (4, 3,3);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (5, 3,23);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (6, 4,4);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (7, 5,5);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (8, 6,6);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (9, 7,7);
+insert into lams_workspace_workspace_folder (id, workspace_id, workspace_folder_id) values (10, 8,8);
INSERT INTO lams_organisation (organisation_id, name, code, description, parent_organisation_id, organisation_type_id, create_date, workspace_id, locale_language, locale_country, organisation_state_id)
VALUES (1, 'Root', null, 'Root Organisation',null,1,NOW(),1,'en','AU',1);
Index: lams_common/src/java/org/lamsfoundation/lams/commonContext.xml
===================================================================
diff -u -rc21079bc26cf334c99c5194da3ae223f7bfec9bb -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/src/java/org/lamsfoundation/lams/commonContext.xml (.../commonContext.xml) (revision c21079bc26cf334c99c5194da3ae223f7bfec9bb)
+++ lams_common/src/java/org/lamsfoundation/lams/commonContext.xml (.../commonContext.xml) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -42,6 +42,7 @@
org/lamsfoundation/lams/usermanagement/UserOrganisationRole.hbm.xml
org/lamsfoundation/lams/usermanagement/Workspace.hbm.xml
org/lamsfoundation/lams/usermanagement/WorkspaceFolder.hbm.xml
+ org/lamsfoundation/lams/usermanagement/WorkspaceWorkspaceFolder.hbm.xml
org/lamsfoundation/lams/usermanagement/SupportedLocale.hbm.xml
Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ImportExportUtil.java
===================================================================
diff -u -r3b8c21e084c7a36446794d92e6ad0757b3a03ca2 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ImportExportUtil.java (.../ImportExportUtil.java) (revision 3b8c21e084c7a36446794d92e6ad0757b3a03ca2)
+++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ImportExportUtil.java (.../ImportExportUtil.java) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -113,7 +113,10 @@
}
/**
- * Method decryptDesign.
+ * Decrypt Import packet. Exports were encrypted back in LAMS 1.0beta6 and prior but
+ * encryption is not longer supported. We will not be supporting encryption of exports
+ * in the future - this code is here only to support the importing of old encrypted designs.
+ *
* @param fileContent
* @return String
*/
Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/User.java
===================================================================
diff -u -r37aa3c425e4aa8a93b811a7656a254b4bb103318 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/src/java/org/lamsfoundation/lams/usermanagement/User.java (.../User.java) (revision 37aa3c425e4aa8a93b811a7656a254b4bb103318)
+++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/User.java (.../User.java) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -729,7 +729,7 @@
UserOrganisation userOrganisation = (UserOrganisation)iterator.next();
// not all orgs have a folder
Workspace workspace = userOrganisation.getOrganisation().getWorkspace();
- if ( workspace != null && workspace.getFolders() != null ) {
+ if ( workspace != null ) {
foundMemberFolder = checkFolders(workspace.getFolders(),workspaceFolderID);
}
}
Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/Workspace.java
===================================================================
diff -u -r8a4d69bf6159f6bcd910eb930d77016e255619e9 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/src/java/org/lamsfoundation/lams/usermanagement/Workspace.java (.../Workspace.java) (revision 8a4d69bf6159f6bcd910eb930d77016e255619e9)
+++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/Workspace.java (.../Workspace.java) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -24,6 +24,8 @@
package org.lamsfoundation.lams.usermanagement;
import java.io.Serializable;
+import java.util.HashSet;
+import java.util.Iterator;
import java.util.Set;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
@@ -41,7 +43,7 @@
private Integer workspaceId;
/** persistent field */
- private Set folders;
+ private Set workspaceWorkspaceFolders;
/** persistent field */
private WorkspaceFolder defaultFolder;
@@ -104,20 +106,55 @@
this.defaultFolder = defaultFolder;
}
- /**
- * @hibernate.set role="folders" table="lams_workspace_workspace_folder" cascade="all-delete-orphan"
- * @hibernate.collection-key column="workspace_id"
- * @hibernate.collection-many-to-manyclass="org.lamsfoundation.lams.usermanagement.WorkspaceFolder"
- * column="workspace_folder_id"
+ /**
+ * WorkspaceWorkspaceFolder is a join object that links a workspace folder to its workspaces.
+ * @hibernate.set inverse="false" cascade="all-delete-orphan"
+ * @hibernate.collection-key column="workspace_id"
+ * @hibernate.collection-one-to-many class="org.lamsfoundation.lams.usermanagement.WorkspaceWorkspaceFolder"
*/
- public Set getFolders() {
- return folders;
+ public Set getWorkspaceWorkspaceFolders() {
+ return workspaceWorkspaceFolders;
}
- public void setFolders(Set folders) {
- this.folders = folders;
+ public void setWorkspaceWorkspaceFolders(Set workspaceWorkspaceFolders) {
+ this.workspaceWorkspaceFolders = workspaceWorkspaceFolders;
}
+ /** Get all the folders for this workspace, based on the lams_workspace_workspace join table. This set is not a persistent
+ * set so to add a folder use "addFolder(folder)" rather than getFolders().put(folder). */
+ public Set getFolders() {
+ HashSet set = new HashSet();
+ if ( getWorkspaceWorkspaceFolders() != null ) {
+ Iterator iter = getWorkspaceWorkspaceFolders().iterator();
+ while ( iter.hasNext() ) {
+ WorkspaceWorkspaceFolder wwf = (WorkspaceWorkspaceFolder) iter.next();
+ set.add(wwf.getWorkspaceFolder());
+ }
+ }
+ return set;
+ }
+
+ /** Add a folder to workspace. */
+ public void addFolder(WorkspaceFolder folder) {
+ // check that the folder doesn't already exist
+ if ( getWorkspaceWorkspaceFolders() != null ) {
+ Iterator iter = getWorkspaceWorkspaceFolders().iterator();
+ while ( iter.hasNext() ) {
+ WorkspaceWorkspaceFolder wwf = (WorkspaceWorkspaceFolder) iter.next();
+ WorkspaceFolder wf = wwf.getWorkspaceFolder();
+ if ( wf.equals(folder) )
+ return;
+ }
+ }
+
+ // not found so add it to the set
+ WorkspaceWorkspaceFolder wwf = new WorkspaceWorkspaceFolder(null, this, folder);
+ if ( getWorkspaceWorkspaceFolders() == null ) {
+ setWorkspaceWorkspaceFolders(new HashSet());
+ }
+ getWorkspaceWorkspaceFolders().add(wwf);
+ }
+
/**
* @hibernate.many-to-one
* not-null="true"
Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/WorkspaceFolder.java
===================================================================
diff -u -r8a4d69bf6159f6bcd910eb930d77016e255619e9 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/src/java/org/lamsfoundation/lams/usermanagement/WorkspaceFolder.java (.../WorkspaceFolder.java) (revision 8a4d69bf6159f6bcd910eb930d77016e255619e9)
+++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/WorkspaceFolder.java (.../WorkspaceFolder.java) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -26,7 +26,9 @@
import java.io.Serializable;
import java.util.Date;
import java.util.HashSet;
+import java.util.Iterator;
import java.util.Set;
+
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
@@ -64,7 +66,7 @@
private WorkspaceFolder parentWorkspaceFolder;
/** persistent field */
- private Set workspaces;
+ private Set workspaceWorkspaceFolders;
/** persistent field */
private Set childWorkspaceFolders;
@@ -139,7 +141,7 @@
public WorkspaceFolder(String name, WorkspaceFolder parentWorkspaceFolder, Set workspaces, Set childWorkspaceFolders) {
this.name = name;
this.parentWorkspaceFolder = parentWorkspaceFolder;
- this.workspaces = workspaces;
+ this.workspaceWorkspaceFolders = workspaces;
this.childWorkspaceFolders = childWorkspaceFolders;
}
@@ -189,20 +191,34 @@
this.parentWorkspaceFolder = parentWorkspaceFolder;
}
- /**
- * @hibernate.set role="workspaces" table="lams_workspace_workspace_folder" cascase="all-delete-orphan"
- * @hibernate.collection-key column="workspace_folder_id"
- * @hibernate.collection-many-to-manyclass="org.lamsfoundation.lams.usermanagement.Workspace"
- * column="workspace_id"
+ /**
+ * WorkspaceWorkspaceFolder is a join object that links a workspace folder to its workspaces.
+ * @hibernate.set inverse="false" cascade="all-delete-orphan"
+ * @hibernate.collection-key column="workspace_folder"
+ * @hibernate.collection-one-to-many class="org.lamsfoundation.lams.usermanagement.WorkspaceWorkspaceFolder"
*/
- public Set getWorkspaces() {
- return workspaces;
+ protected Set getWorkspaceWorkspaceFolders() {
+ return workspaceWorkspaceFolders;
}
- public void setWorkspaces(Set workspaces) {
- this.workspaces = workspaces;
+ protected void setWorkspaceWorkspaceFolders(Set workspaceWorkspaceFolders) {
+ this.workspaceWorkspaceFolders = workspaceWorkspaceFolders;
}
+ /** Get all the workspaces for this folder, based on the lams_workspace_workspace join table. This set is not a persistent
+ * set so to add a folder you cannot use "addWorkspace(workspace)". You must go to the Workspace and do workspace.addFolder(folder). */
+ public Set getWorkspaces() {
+ HashSet set = new HashSet();
+ if ( getWorkspaceWorkspaceFolders() != null ) {
+ Iterator iter = getWorkspaceWorkspaceFolders().iterator();
+ while ( iter.hasNext() ) {
+ WorkspaceWorkspaceFolder wwf = (WorkspaceWorkspaceFolder) iter.next();
+ set.add(wwf.getWorkspace());
+ }
+ }
+ return set;
+ }
+
/**
* @hibernate.set
* lazy="true"
Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/WorkspaceWorkspaceFolder.java
===================================================================
diff -u
--- lams_common/src/java/org/lamsfoundation/lams/usermanagement/WorkspaceWorkspaceFolder.java (revision 0)
+++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/WorkspaceWorkspaceFolder.java (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -0,0 +1,127 @@
+/***************************************************************************
+ * Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+ * =============================================================
+ * License Information: http://lamsfoundation.org/licensing/lams/2.0/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2.0
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ *
+ * http://www.gnu.org/licenses/gpl.txt
+ * ************************************************************************
+ */
+/* $$Id$$ */
+package org.lamsfoundation.lams.usermanagement;
+
+import java.io.Serializable;
+
+import org.apache.commons.lang.builder.EqualsBuilder;
+import org.apache.commons.lang.builder.HashCodeBuilder;
+import org.apache.commons.lang.builder.ToStringBuilder;
+
+/**
+ * Join table that maps workspace to workspace folders. Was having trouble getting Hibernate
+ * to persist the join table.
+ *
+ * @hibernate.class table="lams_workspace_workspace_folder"
+ *
+ * @author Fiona Malikoff
+ *
+*/
+public class WorkspaceWorkspaceFolder implements Serializable {
+
+ private static final long serialVersionUID = -2111064926800456263L;
+
+ /** identifier field */
+ private Integer id;
+
+ /** identifier field */
+ private Workspace workspace;
+
+ /** identifier field */
+ private WorkspaceFolder workspaceFolder;
+
+ /** default constructor */
+ public WorkspaceWorkspaceFolder() {
+ }
+
+ public WorkspaceWorkspaceFolder(Integer id, Workspace workspace, WorkspaceFolder workspaceFolder) {
+ this.id = id;
+ this.workspace = workspace;
+ this.workspaceFolder = workspaceFolder;
+ }
+
+ /** @hibernate.id
+ * generator-class="native"
+ * type="java.lang.Integer"
+ * column="id"
+ */
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+ /**
+ * @hibernate.many-to-one
+ * not-null="true"
+ * lazy="false"
+ * @hibernate.column name="workspace_folder_id"
+ */
+ public WorkspaceFolder getWorkspaceFolder() {
+ return this.workspaceFolder;
+ }
+
+ public void setWorkspaceFolder(WorkspaceFolder workspaceFolder) {
+ this.workspaceFolder = workspaceFolder;
+ }
+
+ /**
+ * @hibernate.many-to-one
+ * not-null="true"
+ * lazy="false"
+ * @hibernate.column name="workspace_id"
+ */
+ public Workspace getWorkspace() {
+ return this.workspace;
+ }
+
+ public void setWorkspace(Workspace workspace) {
+ this.workspace = workspace;
+ }
+
+ public String toString() {
+ return new ToStringBuilder(this)
+ .append("id", getId())
+ .append("workspace", getWorkspace())
+ .append("workspaceFolder", getWorkspaceFolder())
+ .toString();
+ }
+
+ public boolean equals(Object other) {
+ if ( !(other instanceof WorkspaceWorkspaceFolder) ) return false;
+ WorkspaceWorkspaceFolder castOther = (WorkspaceWorkspaceFolder) other;
+ return new EqualsBuilder()
+ .append(this.getId(), castOther.getId())
+ .isEquals();
+ }
+
+ public int hashCode() {
+ return new HashCodeBuilder()
+ .append(getId())
+ .toHashCode();
+ }
+
+
+}
Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java
===================================================================
diff -u -r882787d2ea17b4756ded02f0fa29f805fe095dc4 -ra07f122478a2eb187e7448fbfe41a738504e3f26
--- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision 882787d2ea17b4756ded02f0fa29f805fe095dc4)
+++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision a07f122478a2eb187e7448fbfe41a738504e3f26)
@@ -45,6 +45,7 @@
import org.lamsfoundation.lams.usermanagement.UserOrganisationRole;
import org.lamsfoundation.lams.usermanagement.Workspace;
import org.lamsfoundation.lams.usermanagement.WorkspaceFolder;
+import org.lamsfoundation.lams.usermanagement.WorkspaceWorkspaceFolder;
import org.lamsfoundation.lams.usermanagement.dto.OrganisationDTO;
import org.lamsfoundation.lams.usermanagement.dto.OrganisationDTOFactory;
import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
@@ -386,9 +387,7 @@
save(workspace);
WorkspaceFolder folder = new WorkspaceFolder(workspace.getName(),user.getUserId(),new Date(),new Date(),WorkspaceFolder.NORMAL);
save(folder);
- if ( workspace.getFolders() == null )
- workspace.setFolders(new HashSet());
- workspace.getFolders().add(folder);
+ workspace.addFolder(folder);
workspace.setDefaultFolder(folder);
user.setWorkspace(workspace);
return user;
@@ -412,14 +411,10 @@
save(workspaceFolder2);
Workspace workspace = new Workspace(workspaceName);
- if ( workspace.getFolders() == null )
- workspace.setFolders(new HashSet());
-
- workspace.getFolders().add(workspaceFolder);
workspace.setDefaultFolder(workspaceFolder);
- workspace.getFolders().add(workspaceFolder2);
workspace.setDefaultRunSequencesFolder(workspaceFolder2);
-
+ workspace.addFolder(workspaceFolder);
+ workspace.addFolder(workspaceFolder2);
save(workspace);
return workspace;