Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java,v diff -u -r1.84 -r1.85 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java 16 May 2008 06:30:56 -0000 1.84 +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java 15 Aug 2008 04:44:51 -0000 1.85 @@ -114,6 +114,7 @@ import org.lamsfoundation.lams.lesson.LessonClass; import org.lamsfoundation.lams.tool.SystemTool; import org.lamsfoundation.lams.tool.Tool; +import org.lamsfoundation.lams.tool.ToolAdapterContentManager; import org.lamsfoundation.lams.tool.ToolContent; import org.lamsfoundation.lams.tool.ToolContentManager; import org.lamsfoundation.lams.tool.dao.ISystemToolDAO; @@ -1016,7 +1017,7 @@ * @throws ImportToolContentException */ public Object[] importLearningDesign(File designFile, User importer, Integer workspaceFolderUid, - List toolsErrorMsgs) throws ImportToolContentException { + List toolsErrorMsgs, String customCSV) throws ImportToolContentException { Object[] ldResults = new Object[3]; Long ldId = null; @@ -1042,7 +1043,7 @@ File fullFilePath = new File(FileUtil.getFullPath(ldPath,LEARNING_DESIGN_FILE_NAME)); if ( fullFilePath.canRead() ) { - ldId = importLearningDesignV2(ldPath,importer,workspaceFolderUid,toolsErrorMsgs); + ldId = importLearningDesignV2(ldPath,importer,workspaceFolderUid,toolsErrorMsgs, customCSV); } else { badFileType(ldErrorMsgs, filename,"Learning design file not found."); } @@ -1099,7 +1100,7 @@ * @see org.lamsfoundation.lams.authoring.service.IExportToolContentService.importLearningDesign(String) */ public Long importLearningDesignV2(String learningDesignPath, User importer, Integer workspaceFolderUid - , List toolsErrorMsgs) throws ImportToolContentException { + , List toolsErrorMsgs, String customCSV) throws ImportToolContentException { try { //import learning design @@ -1142,15 +1143,26 @@ //Invoke tool's importToolContent() method. try{ //begin to import - ToolContentManager contentManager = (ToolContentManager) findToolService(newTool); log.debug("Tool begin to import content : " + activity.getActivityTitle() +" by contentID :" + activity.getToolContentID()); //tool's importToolContent() method //get from and to version String toVersion = newTool.getToolVersion(); String fromVersion = activity.getToolVersion(); - contentManager.importToolContent(newContent.getToolContentId(),importer.getUserId(),toolPath,fromVersion,toVersion); + + ToolContentManager contentManager = (ToolContentManager) findToolService(newTool); + // If this is a tool adapter tool, pass the customCSV to the special importToolContent method + // Otherwise invoke the normal tool importToolContentMethod + if (contentManager instanceof ToolAdapterContentManager) + { + ToolAdapterContentManager toolAdapterContentManager = (ToolAdapterContentManager)contentManager; + toolAdapterContentManager.importToolContent(newContent.getToolContentId(),importer.getUserId(),toolPath,fromVersion,toVersion, customCSV); + } + else + { + contentManager.importToolContent(newContent.getToolContentId(),importer.getUserId(),toolPath,fromVersion,toVersion); + } log.debug("Tool content import success."); }catch (Exception e) { String error = getMessageService().getMessage(ERROR_SERVICE_ERROR,new Object[]{newTool.getToolDisplayName(),e.toString()}); Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/IExportToolContentService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/IExportToolContentService.java,v diff -u -r1.17 -r1.18 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/IExportToolContentService.java 18 Oct 2007 06:22:42 -0000 1.17 +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/IExportToolContentService.java 15 Aug 2008 04:44:51 -0000 1.18 @@ -115,6 +115,7 @@ * @param designFile * @param importer * @param workspaceFolderUid + * @param customCSV the customCSV to be used by tool adapters to create new instances on the external LMS * @return An object array where: *
    *
  • Object[0] = ldID (Long)
  • @@ -125,14 +126,15 @@ * @throws ImportToolContentException */ Object[] importLearningDesign(File designFile, User importer, Integer workspaceFolderUid, - List toolsErrorMsgs) throws ImportToolContentException ; + List toolsErrorMsgs, String customCSV) throws ImportToolContentException ; /** Import the learning design from the given path. Set the importer as the creator. If the workspaceFolderUid is * null then saves the design in the user's own workspace folder. * * @param learningDesignPath * @param importer * @param workspaceFolderUid + * @param customCSV the customCSV to be used by tool adapters to create new instances on the external LMS * @return learningDesignID * @throws ImportToolContentException */