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);