Index: lams_central/web/toolcontent/learning-design-ims.xslt
===================================================================
diff -u -r0b3fc47e4fa8ad1509b51be79238d823241f0605 -reb79a21f2f297559b5cf91266e21e75994033d3e
--- lams_central/web/toolcontent/learning-design-ims.xslt (.../learning-design-ims.xslt) (revision 0b3fc47e4fa8ad1509b51be79238d823241f0605)
+++ lams_central/web/toolcontent/learning-design-ims.xslt (.../learning-design-ims.xslt) (revision eb79a21f2f297559b5cf91266e21e75994033d3e)
@@ -37,9 +37,15 @@
-
+
+
+
+
+
+
+
@@ -94,13 +100,13 @@
-
+
-
+
@@ -140,6 +146,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -173,7 +217,10 @@
-
+
+
+
+
@@ -185,6 +232,36 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -270,16 +347,20 @@
- S-PARALLELOPTIONSSEQUENCE-
+ S-PARALLELSELECTIONSEQUENCEBRANCHINGBRANCHINGBRANCHINGSELECTION-
PARALLEL
- OPTIONS
+ SELECTION
SEQUENCE
+ SEQUENCE
+ SEQUENCE
+ SEQUENCE
+ SELECTION
- S-PARALLELOPTIONSSEQUENCE-
+ S-PARALLELSELECTIONSEQUENCEBRANCHINGBRANCHINGBRANCHINGSELECTION-
Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java
===================================================================
diff -u -r870373d635bc769aee2dc271e6ff12818fcfcea6 -reb79a21f2f297559b5cf91266e21e75994033d3e
--- lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java (.../ExportToolContentService.java) (revision 870373d635bc769aee2dc271e6ff12818fcfcea6)
+++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java (.../ExportToolContentService.java) (revision eb79a21f2f297559b5cf91266e21e75994033d3e)
@@ -37,7 +37,6 @@
import java.io.Reader;
import java.io.StringReader;
import java.io.StringWriter;
-import java.io.UnsupportedEncodingException;
import java.io.Writer;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.InvocationTargetException;
@@ -48,7 +47,6 @@
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
-import java.util.Hashtable;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -113,8 +111,6 @@
import org.lamsfoundation.lams.learningdesign.dto.LearningDesignDTO;
import org.lamsfoundation.lams.learningdesign.dto.ToolOutputBranchActivityEntryDTO;
import org.lamsfoundation.lams.learningdesign.dto.TransitionDTO;
-import org.lamsfoundation.lams.learningdesign.service.ToolContentVersionFilter.AddedField;
-import org.lamsfoundation.lams.learningdesign.service.ToolContentVersionFilter.RemovedField;
import org.lamsfoundation.lams.lesson.LessonClass;
import org.lamsfoundation.lams.tool.SystemTool;
import org.lamsfoundation.lams.tool.Tool;
@@ -124,7 +120,6 @@
import org.lamsfoundation.lams.tool.dao.IToolContentDAO;
import org.lamsfoundation.lams.tool.dao.IToolDAO;
import org.lamsfoundation.lams.tool.dao.IToolImportSupportDAO;
-import org.lamsfoundation.lams.tool.exception.ToolException;
import org.lamsfoundation.lams.usermanagement.User;
import org.lamsfoundation.lams.usermanagement.WorkspaceFolder;
import org.lamsfoundation.lams.util.Configuration;
@@ -133,9 +128,6 @@
import org.lamsfoundation.lams.util.FileUtilException;
import org.lamsfoundation.lams.util.MessageService;
import org.lamsfoundation.lams.util.VersionUtil;
-import org.lamsfoundation.lams.util.wddx.WDDXProcessor;
-import org.lamsfoundation.lams.util.wddx.WDDXProcessorConversionException;
-import org.lamsfoundation.lams.util.wddx.WDDXTAGS;
import org.lamsfoundation.lams.util.zipfile.ZipFileUtil;
import org.lamsfoundation.lams.util.zipfile.ZipFileUtilException;
import org.springframework.beans.BeansException;
@@ -198,13 +190,14 @@
//this is not IMS standard tag, temporarily use to gather all tools node list
private static final String IMS_TAG_TRANSITIONS = "transitions";
- // this is not IMS standard tag, temp use to ref grouping/gate activities
+ // this is not IMS standard tag, term used to ref grouping/gate activities
private static final String IMS_TAG_GROUPING = "group";
private static final String IMS_TAG_GATE = "gate";
- private static final String IMS_TAG_OPTIONAL = "OPTIONS";
+ private static final String IMS_TAG_OPTIONAL = "SELECTION";
private static final String IMS_TAG_PARALLEL = "PARALLEL";
private static final String IMS_TAG_SEQUENCE = "SEQUENCE";
+ private static final String IMS_TAG_BRANCHING = "BRANCHING";
//temporarily file for IMS XSLT file
private static final String XSLT_PARAM_RESOURCE_FILE = "resourcesFile";
@@ -482,7 +475,7 @@
if(format == PACKAGE_FORMAT_IMS){
handleIMS(rootDir, activity,resChildren);
}
- } //end all acitivites export
+ } //end all activities export
try {
//handle IMS format
@@ -503,7 +496,7 @@
}
} catch (Exception e) {
- log.error(e);
+ log.error("Error thrown while creating IMS LD XML", e);
throw new ExportToolContentException(e);
}
@@ -591,7 +584,7 @@
if(actDto.getActivityTypeID().equals(Activity.GROUPING_ACTIVITY_TYPE))
att = new Attribute(IMS_ATTR_REF,IMS_PREFIX_ACTIVITY_REF + IMS_TAG_GROUPING + "-" + actDto.getActivityID());
else if(actDto.getActivityTypeID().equals(Activity.SCHEDULE_GATE_ACTIVITY_TYPE) || actDto.getActivityTypeID().equals(Activity.PERMISSION_GATE_ACTIVITY_TYPE)
- || actDto.getActivityTypeID().equals(Activity.SYNCH_GATE_ACTIVITY_TYPE))
+ || actDto.getActivityTypeID().equals(Activity.SYNCH_GATE_ACTIVITY_TYPE) || actDto.getActivityTypeID().equals(Activity.SYSTEM_GATE_ACTIVITY_TYPE))
att = new Attribute(IMS_ATTR_REF,IMS_PREFIX_ACTIVITY_REF + IMS_TAG_GATE + "-" + actDto.getActivityID());
else if (actDto.getActivityTypeID().equals(Activity.OPTIONS_ACTIVITY_TYPE)
|| actDto.getActivityTypeID().equals(Activity.OPTIONS_WITH_SEQUENCES_TYPE))
@@ -600,7 +593,10 @@
att = new Attribute(IMS_ATTR_REF, IMS_PREFIX_COMPLEX_REF + IMS_TAG_PARALLEL + "-" + actDto.getActivityID());
else if(actDto.getActivityTypeID().equals(Activity.SEQUENCE_ACTIVITY_TYPE))
att = new Attribute(IMS_ATTR_REF, IMS_PREFIX_COMPLEX_REF + IMS_TAG_SEQUENCE + "-" + actDto.getActivityID());
- else
+ else if(actDto.getActivityTypeID().equals(Activity.CHOSEN_BRANCHING_ACTIVITY_TYPE) || actDto.getActivityTypeID().equals(Activity.GROUP_BRANCHING_ACTIVITY_TYPE)
+ || actDto.getActivityTypeID().equals(Activity.TOOL_BRANCHING_ACTIVITY_TYPE) )
+ att = new Attribute(IMS_ATTR_REF, IMS_PREFIX_COMPLEX_REF + IMS_TAG_BRANCHING + "-" + actDto.getActivityID());
+ else
att = new Attribute(IMS_ATTR_REF,IMS_PREFIX_ACTIVITY_REF + actDto.getToolSignature() + "-" + actDto.getToolContentID());
ref.setAttribute(att);