Index: lams_central/src/java/org/lamsfoundation/lams/web/PortraitSaveController.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_central/src/java/org/lamsfoundation/lams/web/PortraitSaveController.java (.../PortraitSaveController.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_central/src/java/org/lamsfoundation/lams/web/PortraitSaveController.java (.../PortraitSaveController.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -127,39 +127,39 @@ // upload to the content repository originalFileNode = centralToolContentHandler.uploadFile(is, fileNameWithoutExt + "_original.jpg", - "image/jpeg"); + "image/jpeg", true); is.close(); - log.debug("saved file with uuid: " + originalFileNode.getNodeId() + " and portrait uuid " - + originalFileNode.getUuid() + " and version: " + originalFileNode.getVersion()); + log.debug("saved file with uuid: " + originalFileNode.getUuid() + " and portrait uuid " + + originalFileNode.getPortraitUuid() + " and version: " + originalFileNode.getVersion()); //resize to the large size is = ResizePictureUtil.resize(file.getInputStream(), CommonConstants.PORTRAIT_LARGEST_DIMENSION_LARGE); - NodeKey node = centralToolContentHandler.updateFile(originalFileNode.getNodeId(), is, + NodeKey node = centralToolContentHandler.updateFile(originalFileNode.getUuid(), is, fileNameWithoutExt + "_large.jpg", "image/jpeg"); is.close(); - log.debug("saved file with uuid: " + node.getNodeId() + " and version: " + node.getVersion()); + log.debug("saved file with uuid: " + node.getUuid() + " and version: " + node.getVersion()); //resize to the medium size is = ResizePictureUtil.resize(file.getInputStream(), CommonConstants.PORTRAIT_LARGEST_DIMENSION_MEDIUM); - node = centralToolContentHandler.updateFile(node.getNodeId(), is, fileNameWithoutExt + "_medium.jpg", + node = centralToolContentHandler.updateFile(node.getUuid(), is, fileNameWithoutExt + "_medium.jpg", "image/jpeg"); is.close(); - log.debug("saved file with uuid: " + node.getNodeId() + " and version: " + node.getVersion()); + log.debug("saved file with uuid: " + node.getUuid() + " and version: " + node.getVersion()); //resize to the small size is = ResizePictureUtil.resize(file.getInputStream(), CommonConstants.PORTRAIT_LARGEST_DIMENSION_SMALL); - node = centralToolContentHandler.updateFile(node.getNodeId(), is, fileNameWithoutExt + "_small.jpg", + node = centralToolContentHandler.updateFile(node.getUuid(), is, fileNameWithoutExt + "_small.jpg", "image/jpeg"); is.close(); - log.debug("saved file with uuid: " + node.getNodeId() + " and version: " + node.getVersion()); + log.debug("saved file with uuid: " + node.getUuid() + " and version: " + node.getVersion()); } // delete old portrait file (we only want to keep the user's current portrait) if (user.getPortraitUuid() != null) { centralToolContentHandler.deleteFile(user.getPortraitUuid()); } - user.setPortraitUuid(UUID.fromString(originalFileNode.getUuid())); + user.setPortraitUuid(UUID.fromString(originalFileNode.getPortraitUuid())); userManagementService.saveUser(user); return "forward:/index.do?redirect=portrait"; Index: lams_common/src/java/org/lamsfoundation/lams/contentrepository/NodeKey.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_common/src/java/org/lamsfoundation/lams/contentrepository/NodeKey.java (.../NodeKey.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_common/src/java/org/lamsfoundation/lams/contentrepository/NodeKey.java (.../NodeKey.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -28,31 +28,31 @@ import org.apache.commons.lang.builder.ToStringBuilder; /** - * Represents the two part key - node ID and version. + * Represents the two part key - UUID and version. * Version may be null; * * @author Fiona Malikoff */ public class NodeKey { - private Long nodeId = null; + private Long uuid = null; private Long version = null; - private String uuid; + private String portraitUuid; /** * */ - public NodeKey(Long nodeId, Long version, String uuid) { - this.nodeId = nodeId; - this.version = version; + public NodeKey(Long uuid, Long version, String portraitUuid) { this.uuid = uuid; + this.version = version; + this.portraitUuid = portraitUuid; } /** * @return Returns the uuid. */ - public Long getNodeId() { - return nodeId; + public Long getUuid() { + return uuid; } /** @@ -62,14 +62,14 @@ return version; } - public String getUuid() { - return uuid; + public String getPortraitUuid() { + return portraitUuid; } @Override public String toString() { - return new ToStringBuilder(this).append("nodeId", nodeId).append("version", version).append("uuid", uuid) - .toString(); + return new ToStringBuilder(this).append("uuid", uuid).append("version", version) + .append("portraitUuid", portraitUuid).toString(); } @Override @@ -81,12 +81,11 @@ return false; } NodeKey castOther = (NodeKey) other; - return new EqualsBuilder().append(nodeId, castOther.getNodeId()).append(version, castOther.getVersion()) - .isEquals(); + return new EqualsBuilder().append(uuid, castOther.getUuid()).append(version, castOther.getVersion()).isEquals(); } @Override public int hashCode() { - return new HashCodeBuilder().append(nodeId).append(version).toHashCode(); + return new HashCodeBuilder().append(uuid).append(version).toHashCode(); } } Index: lams_common/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentHandler.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_common/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentHandler.java (.../IToolContentHandler.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_common/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentHandler.java (.../IToolContentHandler.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -65,11 +65,14 @@ public NodeKey uploadFile(InputStream stream, String fileName, String mimeType) throws RepositoryCheckedException, InvalidParameterException, RepositoryCheckedException; + public NodeKey uploadFile(InputStream stream, String fileName, String mimeType, boolean generatePortraitUuid) + throws RepositoryCheckedException, InvalidParameterException, RepositoryCheckedException; + /** * Update an existing file in the repository. This will create a new version of this file (its version number will * be equal to the current one incremented by 1). * - * @param nodeId + * @param uuid * unique id of the updated file. Mandatory * * @param stream @@ -86,7 +89,7 @@ * @throws RepositoryCheckedException * Some other error occured. */ - public NodeKey updateFile(Long nodeId, InputStream stream, String fileName, String mimeType) + public NodeKey updateFile(Long uuid, InputStream stream, String fileName, String mimeType) throws RepositoryCheckedException, InvalidParameterException, RepositoryCheckedException; /** @@ -112,24 +115,24 @@ /** * Delete a file node. If the node does not exist, then nothing happens (ie ItemNotFoundException is NOT thrown). * - * @param nodeId + * @param uuid * id of the file node. Mandatory * @throws InvalidParameterException * One of the mandatory parameters is missing. * @throws RepositoryCheckedException * Some other error occured. */ - public void deleteFile(Long nodeId) throws InvalidParameterException, RepositoryCheckedException; + public void deleteFile(Long uuid) throws InvalidParameterException, RepositoryCheckedException; /** - * Delete a file node using UUID + * Delete a file node using portrait UUID */ - public void deleteFile(UUID uuid) throws InvalidParameterException, RepositoryCheckedException; + public void deleteFile(UUID portraitUuid) throws InvalidParameterException, RepositoryCheckedException; /** * Get the file, as an inputstream. * - * @param nodeId + * @param uuid * id of the file node. Mandatory * @throws FileException * An error occured writing the input stream to disk. @@ -138,7 +141,7 @@ * @throws RepositoryCheckedException * Some other error occured. */ - public InputStream getFileInputStream(Long nodeId) + public InputStream getFileInputStream(Long uuid) throws ItemNotFoundException, FileException, RepositoryCheckedException; /** @@ -148,15 +151,13 @@ * If the toFileName is null, file name use original file name instead * and file save path will be system temporary directory. * - * @param nodeId + * @param uuid * @param toFileName * file name to save. Using the original file name instead if null value given. * @throws ItemNotFoundException * @throws RepositoryCheckedException * @throws IOException */ - public void saveFile(Long nodeId, String toFileName) + public void saveFile(Long uuid, String toFileName) throws ItemNotFoundException, RepositoryCheckedException, IOException; - - String getFileUuid(Long nodeId); } \ No newline at end of file Fisheye: Tag fdda1e8549f1e47b0e6967bc4868ec4eda33c775 refers to a dead (removed) revision in file `lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20230127.sql'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java (.../ExportToolContentService.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java (.../ExportToolContentService.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -1068,7 +1068,7 @@ } // refresh file node Uuid and Version value to latest. - BeanUtils.setProperty(fileNode.instance, fileNode.name.uuidFieldName, key.getNodeId()); + BeanUtils.setProperty(fileNode.instance, fileNode.name.uuidFieldName, key.getUuid()); // version id is optional if (fileNode.name.versionFieldName != null) { BeanUtils.setProperty(fileNode.instance, fileNode.name.versionFieldName, key.getVersion()); Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -1211,54 +1211,54 @@ FileInputStream is = new FileInputStream(portraitFile); String fileNameWithoutExt = login; NodeKey originalFileNode = centralToolContentHandler.uploadFile(is, - fileNameWithoutExt + "_original.jpg", "image/jpeg"); + fileNameWithoutExt + "_original.jpg", "image/jpeg", true); is.close(); - log.debug("Saved original portrait with uuid: " + originalFileNode.getNodeId() + " and version: " + log.debug("Saved original portrait with uuid: " + originalFileNode.getUuid() + " and version: " + originalFileNode.getVersion()); //resize to the large size is = new FileInputStream(portraitFile); InputStream modifiedPortraitInputStream = ResizePictureUtil.resize(is, CommonConstants.PORTRAIT_LARGEST_DIMENSION_LARGE); - NodeKey node = centralToolContentHandler.updateFile(originalFileNode.getNodeId(), + NodeKey node = centralToolContentHandler.updateFile(originalFileNode.getUuid(), modifiedPortraitInputStream, fileNameWithoutExt + "_large.jpg", "image/jpeg"); modifiedPortraitInputStream.close(); is.close(); if (log.isDebugEnabled()) { log.debug( - "Saved large portrait with uuid: " + node.getNodeId() + " and version: " + node.getVersion()); + "Saved large portrait with uuid: " + node.getUuid() + " and version: " + node.getVersion()); } //resize to the medium size is = new FileInputStream(portraitFile); modifiedPortraitInputStream = ResizePictureUtil.resize(is, CommonConstants.PORTRAIT_LARGEST_DIMENSION_MEDIUM); - node = centralToolContentHandler.updateFile(node.getNodeId(), modifiedPortraitInputStream, + node = centralToolContentHandler.updateFile(node.getUuid(), modifiedPortraitInputStream, fileNameWithoutExt + "_medium.jpg", "image/jpeg"); modifiedPortraitInputStream.close(); is.close(); if (log.isDebugEnabled()) { - log.debug("Saved medium portrait with uuid: " + node.getNodeId() + " and version: " + log.debug("Saved medium portrait with uuid: " + node.getUuid() + " and version: " + node.getVersion()); } //resize to the small size is = new FileInputStream(portraitFile); modifiedPortraitInputStream = ResizePictureUtil.resize(is, CommonConstants.PORTRAIT_LARGEST_DIMENSION_SMALL); - node = centralToolContentHandler.updateFile(node.getNodeId(), modifiedPortraitInputStream, + node = centralToolContentHandler.updateFile(node.getUuid(), modifiedPortraitInputStream, fileNameWithoutExt + "_small.jpg", "image/jpeg"); modifiedPortraitInputStream.close(); is.close(); if (log.isDebugEnabled()) { log.debug( - "Saved small portrait with uuid: " + node.getNodeId() + " and version: " + node.getVersion()); + "Saved small portrait with uuid: " + node.getUuid() + " and version: " + node.getVersion()); } // delete old portrait file (we only want to keep the user's current portrait) if (user.getPortraitUuid() != null) { centralToolContentHandler.deleteFile(user.getPortraitUuid()); } - user.setPortraitUuid(UUID.fromString(originalFileNode.getUuid())); + user.setPortraitUuid(UUID.fromString(originalFileNode.getPortraitUuid())); saveUser(user); log.info("Uploaded portrait for user " + userId + " with login \"" + login + "\""); Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/CrNode.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/CrNode.java (.../CrNode.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/CrNode.java (.../CrNode.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -57,8 +57,8 @@ @GeneratedValue(strategy = GenerationType.IDENTITY) private Long nodeId; - @Column(name = "uuid") - private UUID uuid; + @Column(name = "portrait_uuid") + private UUID portraitUuid; @Column private String path; @@ -98,14 +98,33 @@ this.createdDateTime = createdDateTime; // start the next version id at 1, which is used straight away by incrementNextVersionId() - this.nextVersionId = 1L; + this.nextVersionId = new Long(1); this.crWorkspace = workspace; this.parentNodeVersion = parentNodeVersion; this.addCrNodeVersion( new CrNodeVersion(this, createdDateTime, incrementNextVersionId(), versionDescription, userId)); } + /** full constructor */ +/* + * public CrNode(String path, String type, Date createdDateTime, Long nextVersionId, + * org.lamsfoundation.lams.contentrepository.CrWorkspace crWorkspace, + * org.lamsfoundation.lams.contentrepository.CrNodeVersion parentNodeVersion, Set crNodeVersions) { + * } + */ + + /** minimal constructor */ +/* + * public CrNode(String type, Long nextVersionId, org.lamsfoundation.lams.contentrepository.CrWorkspace crWorkspace, + * org.lamsfoundation.lams.contentrepository.CrNodeVersion parentNodeVersion, Set crNodeVersions) { + * this.type = type; + * this.nextVersionId = nextVersionId; + * this.crWorkspace = crWorkspace; + * this.parentNodeVersion = parentNodeVersion; + * this.crNodeVersions = crNodeVersions; + * } + */ public Long getNodeId() { return this.nodeId; } @@ -114,12 +133,12 @@ this.nodeId = nodeId; } - public UUID getUuid() { - return uuid; + public UUID getPortraitUuid() { + return portraitUuid; } - public void setUuid(UUID uuid) { - this.uuid = uuid; + public void setPortraitUuid(UUID portraitUuid) { + this.portraitUuid = portraitUuid; } public String getPath() { Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/Download.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/Download.java (.../Download.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/Download.java (.../Download.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -50,7 +50,7 @@ /** * This is a specialised servlet that supports the downloading of single files and the rendering of packages. *

- * It has a rather odd format - you can call it initially with the file/package ID (and optional version and + * It has a rather odd format - you can call it initially with the file/package uuid (and optional version and * preferDownload parameters) using
* download?uuid=<uuid>&version=<version>&preferDownload=[true|false]. *

@@ -158,14 +158,8 @@ version = Download.getLong(request.getParameter(Download.VERSION_NAME)); // check if it is plain numeric UUID or complex portrait UUID - boolean isSimpleUid = !uuid.contains("-"); - if (isSimpleUid) { - response.sendError(HttpServletResponse.SC_FORBIDDEN, - "Downloading files using simple UIDs has been discontinued for security reasons"); - return; - } - IVersionedNode node = getRepositoryService().getFileItem(ticket, uuid, version); - + IVersionedNode node = uuid.contains("-") ? getRepositoryService().getFileItem(ticket, uuid, version) + : getRepositoryService().getFileItem(ticket, Long.valueOf(uuid), version); // update versionId in case it was null and we got the latest version... version = node.getVersion(); @@ -218,12 +212,15 @@ throw new RepositoryCheckedException("Filename is missing. " + Download.expectedFormat); } - IVersionedNode node = getRepositoryService().getFileItem(ticket, uuid, version); + // check if it is plain numeric UUID or complex portrait UUID + IVersionedNode node = uuid.contains("-") ? getRepositoryService().getFileItem(ticket, uuid, version) + : getRepositoryService().getFileItem(ticket, Long.valueOf(uuid), version, relPathString); if (!node.isNodeType(NodeType.FILENODE)) { throw new RepositoryCheckedException( "Unexpected type of node " + node.getNodeType() + " Expected File node. Data is " + node); } handleFileNode(response, request, node, saveFile); + } } Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentFullHandler.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentFullHandler.java (.../IToolContentFullHandler.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/IToolContentFullHandler.java (.../IToolContentFullHandler.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -56,14 +56,14 @@ /** * Copy an entry in the content repository. * - * @param nodeId + * @param uuid * id of the file node. Mandatory * @throws ItemNotFoundException * Node to copy cannot be found * @throws RepositoryCheckedException * Some other error occured. */ - public NodeKey copyFile(Long nodeId) throws ItemNotFoundException, RepositoryCheckedException; + public NodeKey copyFile(Long uuid) throws ItemNotFoundException, RepositoryCheckedException; public IRepositoryService getRepositoryService(); } \ No newline at end of file Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolContentHandler.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolContentHandler.java (.../ToolContentHandler.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/client/ToolContentHandler.java (.../ToolContentHandler.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -173,16 +173,18 @@ } @Override - public NodeKey uploadFile(InputStream stream, String fileName, String mimeType) + public NodeKey uploadFile(InputStream stream, String fileName, String mimeType, boolean generatePortraitUuid) throws RepositoryCheckedException, InvalidParameterException, RepositoryCheckedException { NodeKey nodeKey = null; try { try { - nodeKey = repositoryService.addFileItem(getTicket(false), stream, fileName, mimeType, null); + nodeKey = repositoryService.addFileItem(getTicket(false), stream, fileName, mimeType, null, + generatePortraitUuid); } catch (AccessDeniedException e) { log.warn("Unable to access repository to add file " + fileName + "AccessDeniedException: " + e.getMessage() + " Retrying login."); - nodeKey = repositoryService.addFileItem(getTicket(true), stream, fileName, mimeType, null); + nodeKey = repositoryService.addFileItem(getTicket(true), stream, fileName, mimeType, null, + generatePortraitUuid); } } catch (RepositoryCheckedException e2) { @@ -195,16 +197,22 @@ } @Override - public NodeKey updateFile(Long nodeId, InputStream stream, String fileName, String mimeType) + public NodeKey uploadFile(InputStream stream, String fileName, String mimeType) throws RepositoryCheckedException, InvalidParameterException, RepositoryCheckedException { + return uploadFile(stream, fileName, mimeType, false); + } + + @Override + public NodeKey updateFile(Long uuid, InputStream stream, String fileName, String mimeType) + throws RepositoryCheckedException, InvalidParameterException, RepositoryCheckedException { NodeKey nodeKey = null; try { try { - nodeKey = repositoryService.updateFileItem(getTicket(false), nodeId, fileName, stream, mimeType, null); + nodeKey = repositoryService.updateFileItem(getTicket(false), uuid, fileName, stream, mimeType, null); } catch (AccessDeniedException e) { log.warn("Unable to access repository to add file " + fileName + "AccessDeniedException: " + e.getMessage() + " Retrying login."); - nodeKey = repositoryService.updateFileItem(getTicket(true), nodeId, fileName, stream, mimeType, null); + nodeKey = repositoryService.updateFileItem(getTicket(true), uuid, fileName, stream, mimeType, null); } } catch (RepositoryCheckedException e2) { @@ -271,22 +279,22 @@ } @Override - public void saveFile(Long nodeId, String toFileName) + public void saveFile(Long uuid, String toFileName) throws ItemNotFoundException, RepositoryCheckedException, IOException { try { try { - repositoryService.saveFile(getTicket(false), nodeId, null, toFileName); + repositoryService.saveFile(getTicket(false), uuid, null, toFileName); } catch (AccessDeniedException e) { - log.warn("Unable to access repository to add copy node " + nodeId + "AccessDeniedException: " + log.warn("Unable to access repository to add copy node " + uuid + "AccessDeniedException: " + e.getMessage() + " Retrying login."); - repositoryService.saveFile(getTicket(false), nodeId, null, toFileName); + repositoryService.saveFile(getTicket(false), uuid, null, toFileName); } } catch (ItemNotFoundException e) { - log.warn("Unable to to save node " + nodeId + " as the node cannot be found. Repository Exception: " + log.warn("Unable to to save node " + uuid + " as the node cannot be found. Repository Exception: " + e.getMessage() + " Retry not possible."); throw e; } catch (RepositoryCheckedException e) { - log.warn("Unable to to save node " + nodeId + "Repository Exception: " + e.getMessage() + log.warn("Unable to to save node " + uuid + "Repository Exception: " + e.getMessage() + " Retry not possible."); throw e; } @@ -296,121 +304,125 @@ * TODO To be removed from the system and replaced with the call with the user id. */ @Override - public NodeKey copyFile(Long nodeId) throws ItemNotFoundException, RepositoryCheckedException { + public NodeKey copyFile(Long uuid) throws ItemNotFoundException, RepositoryCheckedException { log.error( "copyFile(Long uuid) to be removed - it sets the owner of files in the content repository to 1. Some tool needs to be updated."); - return copyFile(nodeId, 1); + return copyFile(uuid, new Integer(1)); } /** * Copy an entry in the content repository. * - * @param nodeId + * @param uuid * id of the file node. Mandatory * @throws ItemNotFoundException * Node to copy cannot be found * @throws RepositoryCheckedException * Some other error occured. */ - private NodeKey copyFile(Long nodeId, Integer userId) throws ItemNotFoundException, RepositoryCheckedException { + private NodeKey copyFile(Long uuid, Integer userId) throws ItemNotFoundException, RepositoryCheckedException { NodeKey nodeKey = null; try { try { - nodeKey = repositoryService.copyNodeVersion(getTicket(false), nodeId, null); + nodeKey = repositoryService.copyNodeVersion(getTicket(false), uuid, null); } catch (AccessDeniedException e) { - log.warn("Unable to access repository to add copy node " + nodeId + "AccessDeniedException: " + log.warn("Unable to access repository to add copy node " + uuid + "AccessDeniedException: " + e.getMessage() + " Retrying login."); - nodeKey = repositoryService.copyNodeVersion(getTicket(true), nodeId, null); + nodeKey = repositoryService.copyNodeVersion(getTicket(true), uuid, null); } } catch (ItemNotFoundException e) { - log.warn("Unable to to copy node " + nodeId + " as the node cannot be found. Repository Exception: " + log.warn("Unable to to copy node " + uuid + " as the node cannot be found. Repository Exception: " + e.getMessage() + " Retry not possible."); throw e; } catch (RepositoryCheckedException e) { - log.warn("Unable to to copy node " + nodeId + "Repository Exception: " + e.getMessage() + log.warn("Unable to to copy node " + uuid + "Repository Exception: " + e.getMessage() + " Retry not possible."); throw e; } return nodeKey; } @Override - public void deleteFile(Long nodeId) throws InvalidParameterException, RepositoryCheckedException { + public void deleteFile(Long uuid) throws InvalidParameterException, RepositoryCheckedException { try { try { - repositoryService.deleteNode(getTicket(false), nodeId); + repositoryService.deleteNode(getTicket(false), uuid); } catch (AccessDeniedException e) { - log.warn("Unable to access repository to delete file id" + nodeId + "AccessDeniedException: " + log.warn("Unable to access repository to delete file id" + uuid + "AccessDeniedException: " + e.getMessage() + " Retrying login."); - repositoryService.deleteNode(getTicket(true), nodeId); + repositoryService.deleteNode(getTicket(true), uuid); } } catch (ItemNotFoundException e1) { // didn't exist so don't need to delete. Ignore problem. } catch (RepositoryCheckedException e2) { - log.error("Unable delete file id" + nodeId + "Repository Exception: " + e2.getMessage() + log.error("Unable delete file id" + uuid + "Repository Exception: " + e2.getMessage() + " Retry not possible."); throw e2; } } @Override - public void deleteFile(UUID uuid) throws InvalidParameterException, RepositoryCheckedException { + public void deleteFile(UUID portraitUuid) throws InvalidParameterException, RepositoryCheckedException { try { try { - repositoryService.deleteNode(getTicket(false), uuid); + repositoryService.deleteNode(getTicket(false), portraitUuid); } catch (AccessDeniedException e) { - log.warn("Unable to access repository to delete file id" + uuid + "AccessDeniedException: " + log.warn("Unable to access repository to delete file id" + portraitUuid + "AccessDeniedException: " + e.getMessage() + " Retrying login."); - repositoryService.deleteNode(getTicket(true), uuid); + repositoryService.deleteNode(getTicket(true), portraitUuid); } } catch (ItemNotFoundException e1) { // didn't exist so don't need to delete. Ignore problem. } catch (RepositoryCheckedException e2) { - log.error("Unable delete file id" + uuid + "Repository Exception: " + e2.getMessage() + log.error("Unable delete file id" + portraitUuid + "Repository Exception: " + e2.getMessage() + " Retry not possible."); throw e2; } } @Override - public InputStream getFileInputStream(Long nodeId) + public InputStream getFileInputStream(Long uuid) throws ItemNotFoundException, FileException, RepositoryCheckedException { try { try { - return repositoryService.getFileItem(getTicket(false), nodeId, null).getFile(); + return repositoryService.getFileItem(getTicket(false), uuid, null).getFile(); } catch (AccessDeniedException e) { - log.warn("Unable to access repository to get file id" + nodeId + "AccessDeniedException: " + log.warn("Unable to access repository to get file id" + uuid + "AccessDeniedException: " + e.getMessage() + " Retrying login."); - return repositoryService.getFileItem(getTicket(true), nodeId, null).getFile(); + return repositoryService.getFileItem(getTicket(true), uuid, null).getFile(); } } catch (RepositoryCheckedException e2) { - log.warn("Unable to to get file id" + nodeId + "Repository Exception: " + e2.getMessage() + log.warn("Unable to to get file id" + uuid + "Repository Exception: " + e2.getMessage() + " Retry not possible."); throw e2; } } - @Override - public String getFileUuid(Long nodeId) { - if (nodeId == null) { - return null; - } - NodeKey nodeKey = null; - try { - try { - nodeKey = repositoryService.getFileItem(getTicket(false), nodeId, null).getNodeKey(); - } catch (AccessDeniedException e) { - log.warn("Unable to access repository to get file id" + nodeId + "AccessDeniedException: " - + e.getMessage() + " Retrying login."); - nodeKey = repositoryService.getFileItem(getTicket(true), nodeId, null).getNodeKey(); - } - return nodeKey.getUuid(); - } catch (RepositoryCheckedException e2) { - log.warn("Unable to to get file id" + nodeId + "Repository Exception: " + e2.getMessage() - + " Retry not possible."); - return null; - } - } +/* + * protected File getFile(String fileName, InputStream is) throws FileNotFoundException, Exception { + * InputStream in = new BufferedInputStream(is, 500); + * File file = new File(fileName); + * OutputStream out = new BufferedOutputStream(new FileOutputStream(file), 500); + * int bytes; + * while ((bytes = in.available()) > 0) { + * byte[] byteArray = new byte[bytes]; + * in.read(byteArray); + * out.write(byteArray); + * } + * in.close(); + * out.close(); + * out.flush(); + * return file; + * } + * + * protected byte[] getBytes(File file) throws FileNotFoundException, Exception { + * byte[] byteArray = new byte[(int) file.length()]; + * FileInputStream stream = new FileInputStream(file); + * stream.read(byteArray); + * stream.close(); + * return byteArray; + * } + */ /* *** Required for Spring bean creation **************************/ Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/INodeFactory.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/INodeFactory.java (.../INodeFactory.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/INodeFactory.java (.../INodeFactory.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -54,7 +54,7 @@ */ public abstract SimpleVersionedNode createFileNode(CrWorkspace workspace, SimpleVersionedNode parentNode, String relPath, InputStream istream, String filename, String mimeType, String versionDescription, - Integer userId) + Integer userId, boolean generatePortraitUuid) throws org.lamsfoundation.lams.contentrepository.exception.InvalidParameterException; /** Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/IRepositoryService.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/IRepositoryService.java (.../IRepositoryService.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/IRepositoryService.java (.../IRepositoryService.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -171,7 +171,7 @@ * if any internal errors have occured */ public abstract NodeKey addFileItem(ITicket ticket, InputStream istream, String filename, String mimeType, - String versionDescription) + String versionDescription, boolean generatePortraitUuid) throws FileException, AccessDeniedException, InvalidParameterException; /** @@ -322,16 +322,16 @@ * * @param ticket * ticket issued on login. Identifies tool and workspace - mandatory - * @param nodeId + * @param uuid * id of the file/package - mandatory * @param version * desired version - if null gets latest version * @return node. */ - public abstract IVersionedNode getFileItem(ITicket ticket, Long nodeId, Long version) + public abstract IVersionedNode getFileItem(ITicket ticket, Long uuid, Long version) throws AccessDeniedException, ItemNotFoundException, FileException; - IVersionedNode getFileItem(ITicket ticket, String uuid, Long version) + IVersionedNode getFileItem(ITicket ticket, String portraitUuid, Long version) throws AccessDeniedException, ItemNotFoundException, FileException; /** @@ -347,7 +347,7 @@ * * @param ticket * ticket issued on login. Identifies tool and workspace - mandatory - * @param nodeId + * @param uuid * id of the package - mandatory * @param versionId * desired version - if null gets latest version. This is the version @@ -365,7 +365,7 @@ * if any internal errors have occured * @return node. */ - public abstract IVersionedNode getFileItem(ITicket ticket, Long nodeId, Long versionId, String relPath) + public abstract IVersionedNode getFileItem(ITicket ticket, Long uuid, Long versionId, String relPath) throws AccessDeniedException, ItemNotFoundException, FileException; /** Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/NodeFactory.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/NodeFactory.java (.../NodeFactory.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/NodeFactory.java (.../NodeFactory.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -76,11 +76,11 @@ */ @Override public SimpleVersionedNode createFileNode(CrWorkspace workspace, SimpleVersionedNode parentNode, String relPath, - InputStream istream, String filename, String mimeType, String versionDescription, Integer userId) - throws InvalidParameterException { + InputStream istream, String filename, String mimeType, String versionDescription, Integer userId, + boolean generatePortraitUuid) throws InvalidParameterException { SimpleVersionedNode initialNodeVersion = createBasicNode(NodeType.FILENODE, workspace, parentNode, relPath, - versionDescription, userId); + versionDescription, userId, generatePortraitUuid); initialNodeVersion.setFile(istream, filename, mimeType); return initialNodeVersion; @@ -97,7 +97,7 @@ Integer userId) throws org.lamsfoundation.lams.contentrepository.exception.InvalidParameterException { SimpleVersionedNode initialNodeVersion = createBasicNode(NodeType.PACKAGENODE, workspace, null, null, - versionDescription, userId); + versionDescription, userId, false); initialNodeVersion.setProperty(PropertyName.INITIALPATH, initialPath); return initialNodeVersion; @@ -116,22 +116,24 @@ throws org.lamsfoundation.lams.contentrepository.exception.InvalidParameterException { SimpleVersionedNode initialNodeVersion = createBasicNode(NodeType.DATANODE, workspace, parentNode, null, - versionDescription, userId); + versionDescription, userId, false); return initialNodeVersion; } /** Create the core part of a node */ private SimpleVersionedNode createBasicNode(String nodeType, CrWorkspace workspace, SimpleVersionedNode parentNode, - String relPath, String versionDescription, Integer userId) { + String relPath, String versionDescription, Integer userId, boolean generatePortraitUuid) { SimpleVersionedNode initialNodeVersion = beanFactory.getBean("node", SimpleVersionedNode.class); Date createdDate = new Date(System.currentTimeMillis()); CrNodeVersion parentNodeVersion = parentNode != null ? parentNode.getNodeVersion() : null; CrNode node = new CrNode(relPath, nodeType, createdDate, userId, workspace, parentNodeVersion, versionDescription); - node.setUuid(UUID.randomUUID()); + if (generatePortraitUuid) { + node.setPortraitUuid(UUID.randomUUID()); + } CrNodeVersion nodeVersion = node.getNodeVersion(null); initialNodeVersion.setNode(node); @@ -207,7 +209,7 @@ } CrNode node = null; - List result = nodeDAO.findByProperty(CrNode.class, "uuid", portraitUuid); + List result = nodeDAO.findByProperty(CrNode.class, "portraitUuid", portraitUuid); node = result.isEmpty() ? null : result.get(0); if (node == null) { Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/SimpleRepository.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/SimpleRepository.java (.../SimpleRepository.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/SimpleRepository.java (.../SimpleRepository.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -146,7 +146,7 @@ */ private CrWorkspace getWorkspace(Long workspaceId) throws WorkspaceNotFoundException { // call workspace dao to get the workspace - CrWorkspace workspace = workspaceDAO.find(CrWorkspace.class, workspaceId); + CrWorkspace workspace = (CrWorkspace) workspaceDAO.find(CrWorkspace.class, workspaceId); if (workspace == null) { throw new WorkspaceNotFoundException("Workspace id=" + workspaceId + " does not exist."); } @@ -432,13 +432,14 @@ */ @Override public NodeKey addFileItem(ITicket ticket, InputStream istream, String filename, String mimeType, - String versionDescription) throws FileException, AccessDeniedException, InvalidParameterException { + String versionDescription, boolean generatePortraitUUid) + throws FileException, AccessDeniedException, InvalidParameterException { try { CrWorkspace workspace = getWorkspace(ticket.getWorkspaceId()); Integer userId = getCurrentUserId(); SimpleVersionedNode initialNodeVersion = nodeFactory.createFileNode(workspace, null, null, istream, - filename, mimeType, versionDescription, userId); + filename, mimeType, versionDescription, userId, generatePortraitUUid); initialNodeVersion.save(); return initialNodeVersion.getNodeKey(); } catch (ValidationException e) { @@ -491,16 +492,16 @@ * ITicket, java.lang.Long, java.lang.Long) */ @Override - public IVersionedNode getFileItem(ITicket ticket, Long nodeId, Long version) + public IVersionedNode getFileItem(ITicket ticket, Long uuid, Long version) throws AccessDeniedException, ItemNotFoundException, FileException { - return nodeFactory.getNode(ticket.getWorkspaceId(), nodeId, version); + return nodeFactory.getNode(ticket.getWorkspaceId(), uuid, version); } @Override - public IVersionedNode getFileItem(ITicket ticket, String uuid, Long version) + public IVersionedNode getFileItem(ITicket ticket, String portraitUuid, Long version) throws AccessDeniedException, ItemNotFoundException, FileException { - return nodeFactory.getNode(ticket.getWorkspaceId(), UUID.fromString(uuid), version); + return nodeFactory.getNode(ticket.getWorkspaceId(), UUID.fromString(portraitUuid), version); } /* @@ -510,13 +511,13 @@ * ITicket, java.lang.Long, java.lang.Long, java.lang.String) */ @Override - public IVersionedNode getFileItem(ITicket ticket, Long nodeId, Long version, String relPath) + public IVersionedNode getFileItem(ITicket ticket, Long uuid, Long version, String relPath) throws AccessDeniedException, ItemNotFoundException, FileException { long start = System.currentTimeMillis(); - String key = "getFileItem " + nodeId; + String key = "getFileItem " + uuid; - IVersionedNode latestNodeVersion = nodeFactory.getNode(ticket.getWorkspaceId(), nodeId, version); + IVersionedNode latestNodeVersion = nodeFactory.getNode(ticket.getWorkspaceId(), uuid, version); log.error(key + " latestNodeVersion " + (System.currentTimeMillis() - start)); if (relPath == null) { @@ -744,7 +745,7 @@ } if (node.isNodeType(NodeType.FILENODE)) { - saveSingleFile(toFileName, node); + saveSigleFile(toFileName, node); } else if (node.isNodeType(NodeType.PACKAGENODE)) { Set children = node.getChildNodes(); String tempRoot = FileUtil.createTempDirectory("export_package"); @@ -755,7 +756,7 @@ //if folder does not exist, create first. FileUtil.createDirectory(FileUtil.getFileDirectory(fullname)); - saveSingleFile(fullname, child); + saveSigleFile(fullname, child); } if (toFileName == null) { IValue prop = node.getProperty(PropertyName.FILENAME); @@ -787,7 +788,7 @@ * @throws FileNotFoundException * @throws IOException */ - private void saveSingleFile(String toFileName, IVersionedNode node) + private void saveSigleFile(String toFileName, IVersionedNode node) throws FileException, ValueFormatException, FileUtilException, FileNotFoundException, IOException { InputStream is = node.getFile(); if (toFileName == null) { Index: lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/SimpleVersionedNode.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/SimpleVersionedNode.java (.../SimpleVersionedNode.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_contentrepository/src/java/org/lamsfoundation/lams/contentrepository/service/SimpleVersionedNode.java (.../SimpleVersionedNode.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -246,7 +246,7 @@ @Override public String getPortraitUuid() { nodeObjectInitilised("Unable to get portrait UUID"); - return node.getUuid() == null ? null : node.getUuid().toString(); + return node.getPortraitUuid() == null ? null : node.getPortraitUuid().toString(); } /** @@ -851,13 +851,13 @@ while (iter.hasNext()) { NodeKey nk = (NodeKey) iter.next(); try { - int delStatus = fileDAO.delete(nk.getNodeId(), nk.getVersion()); + int delStatus = fileDAO.delete(nk.getUuid(), nk.getVersion()); if (delStatus == -1) { - failedList.add(fileDAO.getFilePath(nk.getNodeId(), nk.getVersion())); + failedList.add(fileDAO.getFilePath(nk.getUuid(), nk.getVersion())); } } catch (FileException e) { log.error("FileException occured while deleting files for " + nodeDescription, e); - failedList.add("Filename unknown uuid " + nk.getNodeId() + " version " + nk.getVersion()); + failedList.add("Filename unknown uuid " + nk.getUuid() + " version " + nk.getVersion()); } } @@ -1007,7 +1007,7 @@ // no need to the new node as a child node, as createFileNode will do it. FileInputStream istream = new FileInputStream(file); nodeFactory.createFileNode(workspace, this, relPath, istream, filename, null, versionDescription, - userId); + userId, false); } } Index: lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/model/DacoAnswer.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/model/DacoAnswer.java (.../DacoAnswer.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/model/DacoAnswer.java (.../DacoAnswer.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -33,7 +33,6 @@ import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; -import javax.persistence.Transient; import org.apache.log4j.Logger; @@ -83,9 +82,6 @@ @Column(name = "create_date") private Date createDate; - @Transient - private String fileDisplayUuid; - @Override public Object clone() { DacoAnswer cloned = null; @@ -178,12 +174,4 @@ public void setCreateDate(Date createDate) { this.createDate = createDate; } - - public String getFileDisplayUuid() { - return fileDisplayUuid; - } - - public void setFileDisplayUuid(String fileDisplayUuid) { - this.fileDisplayUuid = fileDisplayUuid; - } } \ No newline at end of file Index: lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/service/DacoServiceImpl.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/service/DacoServiceImpl.java (.../DacoServiceImpl.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/service/DacoServiceImpl.java (.../DacoServiceImpl.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -235,7 +235,6 @@ List record = new LinkedList<>(); for (DacoAnswer answer : answers) { - answer.setFileDisplayUuid(dacoToolContentHandler.getFileUuid(answer.getFileUuid())); if (recordId != answer.getRecordId()) { recordId = answer.getRecordId(); /* @@ -326,9 +325,8 @@ if ((answer.getQuestion().getType() == DacoConstants.QUESTION_TYPE_FILE) || (answer.getQuestion().getType() == DacoConstants.QUESTION_TYPE_IMAGE)) { NodeKey nodeKey = processFile(file); - answer.setFileUuid(nodeKey.getNodeId()); + answer.setFileUuid(nodeKey.getUuid()); answer.setFileVersionId(nodeKey.getVersion()); - answer.setFileDisplayUuid(nodeKey.getUuid()); } // create the package from the directory contents @@ -351,7 +349,7 @@ public Integer getGroupRecordCount(Long sessionId) { List users = dacoUserDao.getBySessionId(sessionId); - int groupRecordCount = 0; + Integer groupRecordCount = 0; for (DacoUser user : users) { groupRecordCount += dacoAnswerDao.getUserRecordCount(user.getUserId(), sessionId); } @@ -569,7 +567,7 @@ public List getConfidenceLevels(Long toolSessionId) { return null; } - + @Override public boolean isUserGroupLeader(Long userId, Long toolSessionId) { return false; Index: lams_tool_daco/web/pages/learning/listRecords.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_daco/web/pages/learning/listRecords.jsp (.../listRecords.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_daco/web/pages/learning/listRecords.jsp (.../listRecords.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -198,7 +198,7 @@   - ${answer.fileName} + ${answer.fileName} Index: lams_tool_daco/web/pages/learning/listRecordsHorizontalPart.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_daco/web/pages/learning/listRecordsHorizontalPart.jsp (.../listRecordsHorizontalPart.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_daco/web/pages/learning/listRecordsHorizontalPart.jsp (.../listRecordsHorizontalPart.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -137,7 +137,7 @@ -  ${answer.fileName} +  ${answer.fileName} Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/model/Attachment.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/model/Attachment.java (.../Attachment.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/model/Attachment.java (.../Attachment.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -34,7 +34,6 @@ import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; -import javax.persistence.Transient; import org.apache.commons.lang.builder.EqualsBuilder; import org.apache.commons.lang.builder.HashCodeBuilder; @@ -75,9 +74,6 @@ @JoinColumn(name = "message_uid") private Message message; - @Transient - private String fileDisplayUuid; - //Default contruction method public Attachment() { @@ -180,14 +176,6 @@ this.message = message; } - public String getFileDisplayUuid() { - return fileDisplayUuid; - } - - public void setFileDisplayUuid(String fileDisplayUuid) { - this.fileDisplayUuid = fileDisplayUuid; - } - @Override public int compareTo(Attachment o) { if (o == null) { @@ -199,4 +187,4 @@ return this.getUid() == null ? -1 : 1; } } -} \ No newline at end of file +} Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java (.../ForumService.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java (.../ForumService.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -322,11 +322,7 @@ @Override public Message getMessage(Long messageUid) throws PersistenceException { - Message message = messageDao.getById(messageUid); - for (Attachment attachment : message.getAttachments()) { - attachment.setFileDisplayUuid(forumToolContentHandler.getFileUuid(attachment.getFileUuid())); - } - return message; + return messageDao.getById(messageUid); } @Override @@ -409,10 +405,9 @@ NodeKey nodeKey = processFile(uploadFile); Attachment file = new Attachment(); - file.setFileUuid(nodeKey.getNodeId()); + file.setFileUuid(nodeKey.getUuid()); file.setFileVersionId(nodeKey.getVersion()); file.setFileName(uploadFile.getName()); - file.setFileDisplayUuid(nodeKey.getUuid()); return file; } @@ -569,11 +564,6 @@ if (topic.getToolSession() == null) { map.put(topic.getCreated(), topic); } - - for (Attachment attachment : topic.getAttachments()) { - attachment.setFileDisplayUuid(forumToolContentHandler.getFileUuid(attachment.getFileUuid())); - } - } return MessageDTO.getMessageDTO(new ArrayList<>(map.values())); } @@ -591,11 +581,7 @@ @Override public List getMessagesByUserUid(Long userId, Long sessionId) { List list = messageDao.getByUserAndSession(userId, sessionId); - for (Message message : list) { - for (Attachment attachment : message.getAttachments()) { - attachment.setFileDisplayUuid(forumToolContentHandler.getFileUuid(attachment.getFileUuid())); - } - } + return MessageDTO.getMessageDTO(list); } @@ -727,9 +713,6 @@ } private MessageDTO makeDTOSetRating(MessageSeq msgSeq, Message message) { - for (Attachment attachment : message.getAttachments()) { - attachment.setFileDisplayUuid(forumToolContentHandler.getFileUuid(attachment.getFileUuid())); - } MessageDTO dto = MessageDTO.getMessageDTO(message); dto.setLevel(msgSeq.getMessageLevel()); //set averageRating Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/MonitoringController.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/MonitoringController.java (.../MonitoringController.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -53,7 +53,6 @@ import org.lamsfoundation.lams.tool.forum.ForumConstants; import org.lamsfoundation.lams.tool.forum.dto.MessageDTO; import org.lamsfoundation.lams.tool.forum.dto.SessionDTO; -import org.lamsfoundation.lams.tool.forum.model.Attachment; import org.lamsfoundation.lams.tool.forum.model.Forum; import org.lamsfoundation.lams.tool.forum.model.ForumReport; import org.lamsfoundation.lams.tool.forum.model.ForumToolSession; Index: lams_tool_forum/web/jsps/authoring/parts/msgattachment.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_forum/web/jsps/authoring/parts/msgattachment.jsp (.../msgattachment.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_forum/web/jsps/authoring/parts/msgattachment.jsp (.../msgattachment.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -12,7 +12,7 @@

  • - download/?uuid=${file.fileDisplayUuid}&versionID=${file.fileVersionId}&preferDownload=true + download/?uuid=${file.fileUuid}&versionID=${file.fileVersionId}&preferDownload=true Index: lams_tool_forum/web/jsps/learning/message/msgattachment.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_forum/web/jsps/learning/message/msgattachment.jsp (.../msgattachment.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_forum/web/jsps/learning/message/msgattachment.jsp (.../msgattachment.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -7,7 +7,7 @@ : - download/?uuid=${file.fileDisplayUuid}&versionID=${file.fileVersionId}&preferDownload=true + download/?uuid=${file.fileUuid}&versionID=${file.fileVersionId}&preferDownload=true
    Index: lams_tool_forum/web/jsps/learning/message/msgview.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_forum/web/jsps/learning/message/msgview.jsp (.../msgview.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_forum/web/jsps/learning/message/msgview.jsp (.../msgview.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -111,7 +111,7 @@ - download/?uuid=${file.fileDisplayUuid}&versionID=${file.fileVersionId}&preferDownload=true + download/?uuid=${file.fileUuid}&versionID=${file.fileVersionId}&preferDownload=true Index: lams_tool_forum/web/jsps/monitoring/viewmarks.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_forum/web/jsps/monitoring/viewmarks.jsp (.../viewmarks.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_forum/web/jsps/monitoring/viewmarks.jsp (.../viewmarks.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -111,7 +111,7 @@ - download/?uuid=${file.fileDisplayUuid}&versionID=${file.fileVersionId}&preferDownload=true + download/?uuid=${file.fileUuid}&versionID=${file.fileVersionId}&preferDownload=true Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/model/ImageGalleryItem.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/model/ImageGalleryItem.java (.../ImageGalleryItem.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/model/ImageGalleryItem.java (.../ImageGalleryItem.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -111,13 +111,6 @@ @Transient private ImageGalleryAttachment thumbnailFile; @Transient - private String originalFileDisplayUuid; - @Transient - private String mediumFileDisplayUuid; - @Transient - private String thumbnailFileDisplayUuid; - - @Transient private String titleEscaped; @Transient private String descriptionEscaped; @@ -338,28 +331,4 @@ public void setDescriptionEscaped(String descriptionEscaped) { this.descriptionEscaped = descriptionEscaped; } - - public String getOriginalFileDisplayUuid() { - return originalFileDisplayUuid; - } - - public void setOriginalFileDisplayUuid(String originalFileDisplayUuid) { - this.originalFileDisplayUuid = originalFileDisplayUuid; - } - - public String getMediumFileDisplayUuid() { - return mediumFileDisplayUuid; - } - - public void setMediumFileDisplayUuid(String mediumFileDisplayUuid) { - this.mediumFileDisplayUuid = mediumFileDisplayUuid; - } - - public String getThumbnailFileDisplayUuid() { - return thumbnailFileDisplayUuid; - } - - public void setThumbnailFileDisplayUuid(String thumbnailFileDisplayUuid) { - this.thumbnailFileDisplayUuid = thumbnailFileDisplayUuid; - } -} \ No newline at end of file +} Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/IImageGalleryService.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/IImageGalleryService.java (.../IImageGalleryService.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/IImageGalleryService.java (.../IImageGalleryService.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -24,7 +24,6 @@ package org.lamsfoundation.lams.tool.imageGallery.service; import java.io.File; -import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; @@ -308,8 +307,4 @@ void saveOrUpdateImageGalleryConfigItem(ImageGalleryConfigItem item); void notifyTeachersOnImageSumbit(Long sessionId, ImageGalleryUser imageGalleryUser); - - void fillImageDisplayUuid(ImageGalleryItem item); - - void fillImageDisplayUuid(Collection items); } Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryOutputFactory.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryOutputFactory.java (.../ImageGalleryOutputFactory.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryOutputFactory.java (.../ImageGalleryOutputFactory.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -20,6 +20,7 @@ * **************************************************************** */ + package org.lamsfoundation.lams.tool.imageGallery.service; import java.util.ArrayList; @@ -59,7 +60,7 @@ public SortedMap getToolOutputDefinitions(Object toolContentObject, int definitionType) { - TreeMap definitionMap = new TreeMap<>(); + TreeMap definitionMap = new TreeMap(); Class simpleUrlArrayClass = SimpleURL[].class; switch (definitionType) { @@ -90,9 +91,9 @@ public SortedMap getToolOutput(List names, IImageGalleryService imageGalleryService, Long toolSessionId, Long learnerId) { - TreeMap outputs = new TreeMap<>(); + TreeMap outputs = new TreeMap(); // tool output cache - TreeMap baseOutputs = new TreeMap<>(); + TreeMap baseOutputs = new TreeMap(); if (names == null) { outputs.put(ImageGalleryOutputFactory.OUTPUT_NAME_LEARNER_NUM_IMAGES_UPLOADED, getToolOutput(ImageGalleryOutputFactory.OUTPUT_NAME_LEARNER_NUM_IMAGES_UPLOADED, @@ -140,13 +141,13 @@ } else if (nameParts[0].equals(ImageGalleryOutputFactory.OUTPUT_NAME_LEARNER_NUM_VOTES)) { return getNumVotes(user, session, imageGalleryService); } else if (nameParts[0].equals(ImageGalleryOutputFactory.OUTPUT_NAME_UPLOADED_IMAGES_URLS)) { - List uploadedImagesUrls = new ArrayList<>(); + List uploadedImagesUrls = new ArrayList(); Set sessionImages = imageGalleryService .getImagesForGroup(session.getImageGallery(), toolSessionId); for (ImageGalleryItem image : sessionImages) { if (!image.isCreateByAuthor()) { String serverUrl = Configuration.get(ConfigurationKeys.SERVER_URL); - String innerUrl = serverUrl + "download/?uuid=" + image.getOriginalFileDisplayUuid() + String innerUrl = serverUrl + "download/?uuid=" + image.getOriginalFileUuid() + "&preferDownload=false&" + AttributeNames.PARAM_TOOL_CONTENT_HANDLER_NAME + "=" + ImageGalleryConstants.TOOL_CONTENT_HANDLER_NAME; String fullUrl = "javascript:var dummy = window.open('" + innerUrl + "','" @@ -198,7 +199,7 @@ Long contentId = imageGallery.getContentId(); Set allImages = imageGallery.getImageGalleryItems(); - List itemIds = new LinkedList<>(); + List itemIds = new LinkedList(); for (ImageGalleryItem image : allImages) { itemIds.add(image.getUid()); } @@ -210,8 +211,8 @@ boolean isCommentsByOtherUsersRequired = user == null; Long userId = user == null ? -1L : user.getUserId(); - List ratingCriteriaDtos = imageGalleryService.getRatingCriteriaDtos(contentId, - session.getSessionId(), itemIds, isCommentsByOtherUsersRequired, userId); + List ratingCriteriaDtos = imageGalleryService.getRatingCriteriaDtos(contentId, session.getSessionId(), itemIds, + isCommentsByOtherUsersRequired, userId); if (user != null) { for (ItemRatingDTO ratingCriteriaDto : ratingCriteriaDtos) { Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java (.../ImageGalleryServiceImpl.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/service/ImageGalleryServiceImpl.java (.../ImageGalleryServiceImpl.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -176,9 +176,7 @@ @Override public List getAuthoredItems(Long imageGalleryUid) { - List items = imageGalleryItemDao.getAuthoringItems(imageGalleryUid); - fillImageDisplayUuid(items); - return items; + return imageGalleryItemDao.getAuthoringItems(imageGalleryUid); } @Override @@ -436,12 +434,6 @@ summary.setItemRatingDto(itemRatingDto); } - image.setOriginalFileDisplayUuid( - imageGalleryToolContentHandler.getFileUuid(image.getOriginalFileUuid())); - image.setMediumFileDisplayUuid(imageGalleryToolContentHandler.getFileUuid(image.getMediumFileUuid())); - image.setThumbnailFileDisplayUuid( - imageGalleryToolContentHandler.getFileUuid(image.getThumbnailFileUuid())); - group.add(summary); } // if there is no any item available, then just put session name into Summary @@ -561,11 +553,10 @@ // upload file NodeKey nodeKey = uploadMultipartFile(file); image.setFileName(file.getName()); - image.setOriginalFileUuid(nodeKey.getNodeId()); - image.setOriginalFileDisplayUuid(nodeKey.getUuid()); + image.setOriginalFileUuid(nodeKey.getUuid()); String fileName = file.getName(); - InputStream originalIS = imageGalleryToolContentHandler.getFileInputStream(nodeKey.getNodeId()); + InputStream originalIS = imageGalleryToolContentHandler.getFileInputStream(nodeKey.getUuid()); BufferedImage originalImage = ImageIO.read(originalIS); //throw exception if image was not successfully read if (originalImage == null) { @@ -577,32 +568,30 @@ // prepare medium image originalIS.close(); - originalIS = imageGalleryToolContentHandler.getFileInputStream(nodeKey.getNodeId()); + originalIS = imageGalleryToolContentHandler.getFileInputStream(nodeKey.getUuid()); InputStream mediumIS = ResizePictureUtil.resize(originalIS, mediumImageDimensions); if (mediumIS == null) { throw new UploadImageGalleryFileException("Impossible to resize image"); } String mediumFileName = ImageGalleryServiceImpl.MEDIUM_FILENAME_PREFIX + fileName.substring(0, fileName.indexOf('.')) + ".jpg"; NodeKey mediumNodeKey = imageGalleryToolContentHandler.uploadFile(mediumIS, mediumFileName, "image/jpeg"); - image.setMediumFileUuid(mediumNodeKey.getNodeId()); - image.setMediumFileDisplayUuid(mediumNodeKey.getUuid()); + image.setMediumFileUuid(mediumNodeKey.getUuid()); //store MediumImageWidth and MediumImageHeight - InputStream mediumIS2 = imageGalleryToolContentHandler.getFileInputStream(mediumNodeKey.getNodeId()); + InputStream mediumIS2 = imageGalleryToolContentHandler.getFileInputStream(mediumNodeKey.getUuid()); BufferedImage mediumImage = ImageIO.read(mediumIS2); image.setMediumImageWidth(mediumImage.getWidth(null)); image.setMediumImageHeight(mediumImage.getHeight(null)); mediumIS2.close(); // prepare thumbnail image - InputStream originalIS2 = imageGalleryToolContentHandler.getFileInputStream(nodeKey.getNodeId()); + InputStream originalIS2 = imageGalleryToolContentHandler.getFileInputStream(nodeKey.getUuid()); InputStream thumbnailIS = ResizePictureUtil.resize(originalIS2, thumbnailImageDimensions); String thumbnailFileName = ImageGalleryServiceImpl.THUMBNAIL_FILENAME_PREFIX + fileName.substring(0, fileName.indexOf('.')) + ".jpg"; NodeKey thumbnailNodeKey = imageGalleryToolContentHandler.uploadFile(thumbnailIS, thumbnailFileName, "image/jpeg"); - image.setThumbnailFileUuid(thumbnailNodeKey.getNodeId()); - image.setThumbnailFileDisplayUuid(thumbnailNodeKey.getUuid()); + image.setThumbnailFileUuid(thumbnailNodeKey.getUuid()); } catch (RepositoryCheckedException e) { throw new UploadImageGalleryFileException( @@ -1195,20 +1184,6 @@ return images; } - @Override - public void fillImageDisplayUuid(Collection items) { - for (ImageGalleryItem item : items) { - fillImageDisplayUuid(item); - } - } - - @Override - public void fillImageDisplayUuid(ImageGalleryItem item) { - item.setOriginalFileDisplayUuid(imageGalleryToolContentHandler.getFileUuid(item.getOriginalFileUuid())); - item.setMediumFileDisplayUuid(imageGalleryToolContentHandler.getFileUuid(item.getMediumFileUuid())); - item.setThumbnailFileDisplayUuid(imageGalleryToolContentHandler.getFileUuid(item.getThumbnailFileUuid())); - } - // ***************************************************************************** // private methods // ***************************************************************************** Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java (.../AuthoringController.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -83,7 +83,7 @@ @Autowired @Qualifier("laimagImageGalleryService") - private IImageGalleryService imageGalleryService; + private IImageGalleryService igService; @Autowired @Qualifier("laimagMessageService") @@ -108,13 +108,13 @@ throws ServletException { Long contentId = WebUtil.readLongParam(request, AttributeNames.PARAM_TOOL_CONTENT_ID); - ImageGallery imageGallery = imageGalleryService.getImageGalleryByContentId(contentId); + ImageGallery imageGallery = igService.getImageGalleryByContentId(contentId); imageGallery.setDefineLater(true); - imageGalleryService.saveOrUpdateImageGallery(imageGallery); + igService.saveOrUpdateImageGallery(imageGallery); //audit log the teacher has started editing activity in monitor - imageGalleryService.auditLogStartEditingActivityInMonitor(contentId); + igService.auditLogStartEditingActivityInMonitor(contentId); request.setAttribute(AttributeNames.ATTR_MODE, ToolAccessMode.TEACHER.toString()); return readDatabaseData(imageGalleryForm, request); @@ -141,18 +141,17 @@ imageGalleryForm.setSessionMapID(sessionMap.getSessionID()); try { - imageGallery = imageGalleryService.getImageGalleryByContentId(contentId); + imageGallery = igService.getImageGalleryByContentId(contentId); // if imageGallery does not exist, try to use default content instead. if (imageGallery == null) { - imageGallery = imageGalleryService.getDefaultContent(contentId); + imageGallery = igService.getDefaultContent(contentId); if (imageGallery.getImageGalleryItems() != null) { items = new ArrayList<>(imageGallery.getImageGalleryItems()); - imageGalleryService.fillImageDisplayUuid(items); } else { items = null; } } else { - items = imageGalleryService.getAuthoredItems(imageGallery.getUid()); + items = igService.getAuthoredItems(imageGallery.getUid()); } imageGalleryForm.setImageGallery(imageGallery); @@ -186,7 +185,7 @@ imageGalleryItemList.addAll(items); // get rating criterias from DB - List ratingCriterias = imageGalleryService.getRatingCriterias(contentId); + List ratingCriterias = igService.getRatingCriterias(contentId); sessionMap.put(AttributeNames.ATTR_RATING_CRITERIAS, ratingCriterias); sessionMap.put(ImageGalleryConstants.ATTR_IMAGE_GALLERY_FORM, imageGalleryForm); @@ -239,7 +238,7 @@ Long contentId = imageGalleryForm.getImageGallery().getContentId(); // **********************************Get ImageGallery PO********************* - ImageGallery imageGalleryPO = imageGalleryService.getImageGalleryByContentId(contentId); + ImageGallery imageGalleryPO = igService.getImageGalleryByContentId(contentId); if (imageGalleryPO == null) { // new ImageGallery, create it. imageGalleryPO = imageGallery; @@ -269,8 +268,7 @@ HttpSession ss = SessionManager.getSession(); // get back login user DTO UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); - ImageGalleryUser imageGalleryUser = imageGalleryService.getUserByIDAndContent(user.getUserID().longValue(), - contentId); + ImageGalleryUser imageGalleryUser = igService.getUserByIDAndContent(user.getUserID().longValue(), contentId); if (imageGalleryUser == null) { imageGalleryUser = new ImageGalleryUser(user, imageGalleryPO); } @@ -305,7 +303,7 @@ ImageGalleryItem item = iter.next(); iter.remove(); if (item.getUid() != null) { - imageGalleryService.deleteImageGalleryItem(item.getUid()); + igService.deleteImageGalleryItem(item.getUid()); } } // handle imageGallery item attachment file: @@ -317,14 +315,14 @@ } // ********************************************** // finally persist imageGalleryPO again - imageGalleryService.saveOrUpdateImageGallery(imageGalleryPO); + igService.saveOrUpdateImageGallery(imageGalleryPO); // ************************* Handle rating criterias ******************* if (mode.isAuthor()) { List oldCriterias = (List) sessionMap .get(AttributeNames.ATTR_RATING_CRITERIAS); - imageGalleryService.saveRatingCriterias(request, oldCriterias, contentId); + igService.saveRatingCriterias(request, oldCriterias, contentId); } imageGalleryForm.setImageGallery(imageGalleryPO); @@ -575,7 +573,6 @@ if (item.getOriginalFileUuid() != null) { form.setFileUuid(item.getOriginalFileUuid()); form.setFileName(item.getFileName()); - form.setFileDisplayUuid(item.getOriginalFileDisplayUuid()); form.setHasFile(true); } else { form.setHasFile(false); @@ -622,7 +619,7 @@ if (StringUtils.isBlank(title)) { Long nextImageTitleNumber = (Long) sessionMap.get(ImageGalleryConstants.ATTR_NEXT_IMAGE_TITLE); sessionMap.put(ImageGalleryConstants.ATTR_NEXT_IMAGE_TITLE, nextImageTitleNumber + 1); - title = imageGalleryService.generateNextImageTitle(nextImageTitleNumber); + title = igService.generateNextImageTitle(nextImageTitleNumber); } item.setTitle(title); @@ -664,7 +661,7 @@ if (StringUtils.isBlank(title)) { Long nextImageTitleNumber = (Long) sessionMap.get(ImageGalleryConstants.ATTR_NEXT_IMAGE_TITLE); sessionMap.put(ImageGalleryConstants.ATTR_NEXT_IMAGE_TITLE, nextImageTitleNumber + 1); - title = imageGalleryService.generateNextImageTitle(nextImageTitleNumber); + title = igService.generateNextImageTitle(nextImageTitleNumber); } nextItem.setTitle(title); nextItem.setDescription(item.getDescription()); @@ -673,7 +670,7 @@ item = nextItem; } - imageGalleryService.uploadImageGalleryItemFile(item, file); + igService.uploadImageGalleryItemFile(item, file); if (!hasOld) { imageList.add(item); } Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/LearningController.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/LearningController.java (.../LearningController.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/LearningController.java (.../LearningController.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -210,7 +210,6 @@ image.setDescriptionEscaped(descriptionEscaped); } - igService.fillImageDisplayUuid(images); sessionMap.put(ImageGalleryConstants.ATTR_IMAGE_LIST, images); sessionMap.put(ImageGalleryConstants.ATTR_IMAGE_GALLERY, imageGallery); @@ -318,7 +317,6 @@ ImageGalleryItem image = igService.getImageGalleryItemByUid(imageUid); String escapedDescription = image.getDescription().replaceAll("[\"]", """); image.setDescription(escapedDescription); - igService.fillImageDisplayUuid(image); sessionMap.put(ImageGalleryConstants.PARAM_CURRENT_IMAGE, image); // becuase in webpage will use this login name. Here is just Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/MonitoringController.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/MonitoringController.java (.../MonitoringController.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -131,7 +131,6 @@ request.setAttribute("itemRatingDto", itemRatingDto); } - igService.fillImageDisplayUuid(image); request.setAttribute(ImageGalleryConstants.ATTR_IMAGE, image); imageGalleryItemForm.setImageUid(image.getUid().toString()); Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/form/ImageGalleryItemForm.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/form/ImageGalleryItemForm.java (.../ImageGalleryItemForm.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/form/ImageGalleryItemForm.java (.../ImageGalleryItemForm.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -44,7 +44,6 @@ private boolean hasFile; private Long fileUuid; private String fileName; - private String fileDisplayUuid; private MultipartFile file; private String tmpFileUploadId; @@ -118,14 +117,6 @@ this.fileUuid = fileUuid; } - public String getFileDisplayUuid() { - return fileDisplayUuid; - } - - public void setFileDisplayUuid(String fileDisplayUuid) { - this.fileDisplayUuid = fileDisplayUuid; - } - public boolean isHasFile() { return hasFile; } Index: lams_tool_images/web/pages/authoring/parts/imagefile.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/web/pages/authoring/parts/imagefile.jsp (.../imagefile.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/web/pages/authoring/parts/imagefile.jsp (.../imagefile.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -6,7 +6,7 @@

    : - download/?uuid=${itemAttachment.fileDisplayUuid}&preferDownload=false + download/?uuid=${itemAttachment.fileUuid}&preferDownload=false     Index: lams_tool_images/web/pages/authoring/parts/itemlist.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/web/pages/authoring/parts/itemlist.jsp (.../itemlist.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/web/pages/authoring/parts/itemlist.jsp (.../itemlist.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -15,10 +15,10 @@ - download/?uuid=${image.thumbnailFileDisplayUuid}&preferDownload=false + download/?uuid=${image.thumbnailFileUuid}&preferDownload=false - download/?uuid=${image.mediumFileDisplayUuid}&preferDownload=false + download/?uuid=${image.mediumFileUuid}&preferDownload=false Index: lams_tool_images/web/pages/learning/learning.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/web/pages/learning/learning.jsp (.../learning.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/web/pages/learning/learning.jsp (.../learning.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -108,8 +108,9 @@ { - img: "download/?uuid=${image.mediumFileDisplayUuid}&preferDownload=false", - full: "download/?uuid=${image.originalFileDisplayUuid}&preferDownload=false", + img: "download/?uuid="+${image.mediumFileUuid}+"&preferDownload="+false, + //thumb: ""download/?uuid="+${image.thumbnailFileUuid}+"&preferDownload="+false, + full: "download/?uuid="+${image.originalFileUuid}+"&preferDownload="+false, id: '${image.uid}', // Custom anchor is used with the hash:true option. caption: '

    ' + '${description}' Index: lams_tool_images/web/pages/monitoring/imagesummary.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/web/pages/monitoring/imagesummary.jsp (.../imagesummary.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/web/pages/monitoring/imagesummary.jsp (.../imagesummary.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -51,7 +51,7 @@ - download/?uuid=${image.mediumFileDisplayUuid}&preferDownload=false + download/?uuid=${image.mediumFileUuid}&preferDownload=false Index: lams_tool_images/web/pages/monitoring/summary.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_images/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_images/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -99,7 +99,7 @@ - download/?uuid=${image.thumbnailFileDisplayUuid}&preferDownload=false + download/?uuid=${image.thumbnailFileUuid}&preferDownload=false ?sessionMapID=${sessionMapID}&imageUid=${image.uid}&toolSessionID=${sessionId}&KeepThis=true&TB_iframe=true&modal=true Index: lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/model/CommonCartridgeItem.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/model/CommonCartridgeItem.java (.../CommonCartridgeItem.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/model/CommonCartridgeItem.java (.../CommonCartridgeItem.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -59,7 +59,7 @@ @Column @GeneratedValue(strategy = GenerationType.IDENTITY) private Long uid; - + // CommonCartridge Type:1=URL,2=File,3=Website,4=Learning Object @Column(name = "item_type") private short type; @@ -84,25 +84,25 @@ @Column(name = "launch_url") private String launchUrl; - + @Column(name = "secure_launch_url") private String secureLaunchUrl; - + @Column(name = "tool_key") private String key; - + @Column(name = "tool_secret") private String secret; - + @Column(name = "custom_str") private String customStr; - + @Column(name = "frame_height") private int frameHeight; - + @Column(name = "open_url_new_window") private boolean openUrlNewWindow; - + @Column(name = "button_text") private String buttonText; @@ -125,13 +125,13 @@ @Column(name = "is_hide") private boolean isHide; - + @Column(name = "create_by_author") private boolean isCreateByAuthor; @Column(name = "create_date") private Date createDate; - + @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "create_by") private CommonCartridgeUser createBy; @@ -140,9 +140,6 @@ @Transient private boolean complete; - @Transient - private String fileDisplayUuid; - @Override public Object clone() { CommonCartridgeItem obj = null; @@ -171,7 +168,7 @@ return obj; } - + @Override public String toString() { return new ToStringBuilder(this).append(" uid", uid).append(" type", type).append(" title", title).toString(); @@ -389,11 +386,4 @@ return complete; } - public String getFileDisplayUuid() { - return fileDisplayUuid; - } - - public void setFileDisplayUuid(String fileDisplayUuid) { - this.fileDisplayUuid = fileDisplayUuid; - } -} \ No newline at end of file +} Index: lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/service/CommonCartridgeServiceImpl.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/service/CommonCartridgeServiceImpl.java (.../CommonCartridgeServiceImpl.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/service/CommonCartridgeServiceImpl.java (.../CommonCartridgeServiceImpl.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -178,8 +178,7 @@ } @Override - public void deleteFromRepository(Long fileUuid, Long fileVersionId) - throws InvalidParameterException, RepositoryCheckedException { + public void deleteFromRepository(Long fileUuid, Long fileVersionId) throws InvalidParameterException, RepositoryCheckedException { commonCartridgeToolContentHandler.deleteFile(fileUuid); } @@ -303,9 +302,7 @@ @Override public CommonCartridgeItem getCommonCartridgeItemByUid(Long itemUid) { - CommonCartridgeItem item = commonCartridgeItemDao.getByUid(itemUid); - item.setFileDisplayUuid(commonCartridgeToolContentHandler.getFileUuid(item.getFileUuid())); - return item; + return commonCartridgeItemDao.getByUid(itemUid); } @Override @@ -710,7 +707,7 @@ @Override public boolean isReadOnly(Long toolContentId) { CommonCartridge cartridge = commonCartridgeDao.getByContentId(toolContentId); - for (CommonCartridgeItem item : cartridge.getCommonCartridgeItems()) { + for (CommonCartridgeItem item : (Set) cartridge.getCommonCartridgeItems()) { if (!item.isCreateByAuthor()) { // we don't remove users in removeLearnerContent() // we just remove their items @@ -862,7 +859,7 @@ public List getConfidenceLevels(Long toolSessionId) { return null; } - + @Override public boolean isUserGroupLeader(Long userId, Long toolSessionId) { return false; @@ -877,7 +874,7 @@ public List getMonitorsByToolSessionId(Long sessionId) { return lessonService.getMonitorsByToolSessionId(sessionId); } - + @Override public boolean isGroupedActivity(long toolContentID) { return toolService.isGroupedActivity(toolContentID); @@ -887,7 +884,7 @@ public void auditLogStartEditingActivityInMonitor(long toolContentID) { toolService.auditLogStartEditingActivityInMonitor(toolContentID); } - + @Override public boolean isLastActivity(Long toolSessionId) { return toolService.isLastActivity(toolSessionId); Index: lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/ViewItemController.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/ViewItemController.java (.../ViewItemController.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/ViewItemController.java (.../ViewItemController.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -170,7 +170,7 @@ break; case CommonCartridgeConstants.RESOURCE_TYPE_COMMON_CARTRIDGE: - url = "/download/?uuid=" + item.getFileDisplayUuid() + "&preferDownload=false"; + url = "/download/?uuid=" + item.getFileUuid() + "&preferDownload=false"; break; } request.setAttribute(CommonCartridgeConstants.ATTR_RESOURCE_REVIEW_URL, url); @@ -260,6 +260,35 @@ return item; } + private static Pattern wikipediaPattern = Pattern.compile("wikipedia", + Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE); + + private Object getReviewUrl(CommonCartridgeItem item, String sessionMapID, String mode, int itemIdx) { + short type = item.getType(); + String url = null; + switch (type) { + case CommonCartridgeConstants.RESOURCE_TYPE_BASIC_LTI: + if (item.isOpenUrlNewWindow()) { + if (CommonCartridgeConstants.MODE_AUTHOR_SESSION.equals(mode)) { + url = "/openUrlPopup.do?" + AttributeNames.ATTR_MODE + "=" + mode + "&" + + CommonCartridgeConstants.PARAM_ITEM_INDEX + "=" + itemIdx + "&" + + CommonCartridgeConstants.ATTR_SESSION_MAP_ID + "=" + sessionMapID; + } else { + url = "/openUrlPopup.do?" + CommonCartridgeConstants.PARAM_RESOURCE_ITEM_UID + "=" + + item.getUid() + "&" + CommonCartridgeConstants.ATTR_SESSION_MAP_ID + "=" + + sessionMapID; + } + } else { + url = CommonCartridgeWebUtils.protocol(item.getUrl()); + } + break; + case CommonCartridgeConstants.RESOURCE_TYPE_COMMON_CARTRIDGE: + url = "/download/?uuid=" + item.getFileUuid() + "&preferDownload=false"; + break; + } + return url; + } + /** * List save current commonCartridge items. * Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/model/ResourceItem.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/model/ResourceItem.java (.../ResourceItem.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/model/ResourceItem.java (.../ResourceItem.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -108,13 +108,9 @@ // ******************************* DTO fields *********** @Transient private boolean complete; - @Transient private ItemRatingDTO ratingDTO; - @Transient - private String fileDisplayUuid; - @Override public Object clone() { ResourceItem obj = null; @@ -289,14 +285,6 @@ this.allowComments = allowComments; } - public String getFileDisplayUuid() { - return fileDisplayUuid; - } - - public void setFileDisplayUuid(String fileDisplayUuid) { - this.fileDisplayUuid = fileDisplayUuid; - } - @Override public String toString() { return new ToStringBuilder(this).append("uid", uid).append(" type", type).append(" title", title).toString(); Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceOutputFactory.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceOutputFactory.java (.../ResourceOutputFactory.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceOutputFactory.java (.../ResourceOutputFactory.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -20,6 +20,7 @@ * **************************************************************** */ + package org.lamsfoundation.lams.tool.rsrc.service; import java.util.ArrayList; @@ -46,7 +47,7 @@ @Override public SortedMap getToolOutputDefinitions(Object toolContentObject, int definitionType) throws ToolException { - TreeMap definitionMap = new TreeMap<>(); + TreeMap definitionMap = new TreeMap(); Class simpleUrlArrayClass = SimpleURL[].class; switch (definitionType) { case ToolOutputDefinition.DATA_OUTPUT_DEFINITION_TYPE_CONDITION: @@ -67,9 +68,9 @@ public SortedMap getToolOutput(List names, IResourceService resourceService, Long toolSessionId, Long learnerId) { - TreeMap outputs = new TreeMap<>(); + TreeMap outputs = new TreeMap(); // tool output cache - TreeMap baseOutputs = new TreeMap<>(); + TreeMap baseOutputs = new TreeMap(); if (names == null) { outputs.put(ResourceConstants.SHARED_ITEMS_DEFINITION_NAME, getToolOutput( ResourceConstants.SHARED_ITEMS_DEFINITION_NAME, resourceService, toolSessionId, learnerId)); @@ -97,7 +98,7 @@ String[] nameParts = splitConditionName(name); if (ResourceConstants.SHARED_ITEMS_DEFINITION_NAME.equals(nameParts[0])) { List items = resourceService.getResourceItemsBySessionId(toolSessionId); - List uploadedItems = new ArrayList<>(items.size()); + List uploadedItems = new ArrayList(items.size()); for (ResourceItem item : items) { if (!item.isCreateByAuthor()) { uploadedItems.add(item); @@ -111,8 +112,8 @@ String path = uploadedItem.getUrl(); if (path == null) { - path = serverUrl + "download/?uuid=" + uploadedItem.getFileDisplayUuid() - + "&preferDownload=false&" + AttributeNames.PARAM_TOOL_CONTENT_HANDLER_NAME + "=" + path = serverUrl + "download/?uuid=" + uploadedItem.getFileUuid() + "&preferDownload=false&" + + AttributeNames.PARAM_TOOL_CONTENT_HANDLER_NAME + "=" + ResourceConstants.TOOL_CONTENT_HANDLER_NAME; } Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (.../ResourceServiceImpl.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (.../ResourceServiceImpl.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -171,11 +171,7 @@ @Override public List getAuthoredItems(Long resourceUid) { - List items = resourceItemDao.getAuthoringItems(resourceUid); - for (ResourceItem item : items) { - item.setFileDisplayUuid(resourceToolContentHandler.getFileUuid(item.getFileUuid())); - } - return items; + return resourceItemDao.getAuthoringItems(resourceUid); } @Override @@ -223,9 +219,6 @@ // add resource items from ResourceSession items.addAll(session.getResourceItems()); - for (ResourceItem item : items) { - item.setFileDisplayUuid(resourceToolContentHandler.getFileUuid(item.getFileUuid())); - } return items; } @@ -334,9 +327,7 @@ @Override public ResourceItem getResourceItemByUid(Long itemUid) { - ResourceItem item = resourceItemDao.getByUid(itemUid); - item.setFileDisplayUuid(resourceToolContentHandler.getFileUuid(item.getFileUuid())); - return item; + return resourceItemDao.getByUid(itemUid); } @Override @@ -651,9 +642,8 @@ // For file only upload one sigle file if (item.getType() == ResourceConstants.RESOURCE_TYPE_FILE) { NodeKey nodeKey = processFile(file); - item.setFileUuid(nodeKey.getNodeId()); + item.setFileUuid(nodeKey.getUuid()); item.setFileVersionId(nodeKey.getVersion()); - item.setFileDisplayUuid(nodeKey.getUuid()); } // need unzip upload, and check the initial item :default.htm/html or index.htm/html if (item.getType() == ResourceConstants.RESOURCE_TYPE_WEBSITE) { @@ -668,9 +658,8 @@ item.setInitialItem(initFile); // upload package NodeKey nodeKey = processPackage(packageDirectory, initFile); - item.setFileUuid(nodeKey.getNodeId()); + item.setFileUuid(nodeKey.getUuid()); item.setFileVersionId(nodeKey.getVersion()); - item.setFileDisplayUuid(nodeKey.getUuid()); } catch (ZipFileUtilException e) { log.error(messageService.getMessage("error.msg.zip.file.exception") + " : " + e.toString()); throw new UploadResourceFileException(messageService.getMessage("error.msg.zip.file.exception")); Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/ViewItemController.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/ViewItemController.java (.../ViewItemController.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/ViewItemController.java (.../ViewItemController.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -253,7 +253,7 @@ break; case ResourceConstants.RESOURCE_TYPE_FILE: case ResourceConstants.RESOURCE_TYPE_WEBSITE: - url = "/download/?uuid=" + item.getFileDisplayUuid(); + url = "/download/?uuid=" + item.getFileUuid(); break; } return url; Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/FileDetailsDTO.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/FileDetailsDTO.java (.../FileDetailsDTO.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/FileDetailsDTO.java (.../FileDetailsDTO.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -21,6 +21,8 @@ * **************************************************************** */ + + package org.lamsfoundation.lams.tool.sbmt.dto; import java.io.Serializable; @@ -58,17 +60,15 @@ private String markFileName; private Long markFileUUID; private Long markFileVersionID; - private String markFileDisplayUuid; //file repository info private Long uuID; private Long versionID; - private String displayUuid; private boolean finished; //if this file uploaded by current learner private boolean currentLearner; - + private boolean removed; /** @@ -101,8 +101,7 @@ this.reportID = report.getReportID(); this.comments = report.getComments(); this.marks = report.getMarks() != null - ? NumberUtil.formatLocalisedNumber(report.getMarks(), numberFormat, 2) - : ""; + ? NumberUtil.formatLocalisedNumber(report.getMarks(), numberFormat, 2) : ""; this.markFileName = report.getMarkFileName(); this.markFileUUID = report.getMarkFileUUID(); this.markFileVersionID = report.getMarkFileVersionID(); @@ -229,14 +228,6 @@ this.versionID = versionID; } - public String getDisplayUuid() { - return displayUuid; - } - - public void setDisplayUuid(String displayUuid) { - this.displayUuid = displayUuid; - } - /** * @return Returns the submissionID. */ @@ -307,14 +298,6 @@ this.markFileVersionID = markFileVersionID; } - public String getMarkFileDisplayUuid() { - return markFileDisplayUuid; - } - - public void setMarkFileDisplayUuid(String markFileDisplayUuid) { - this.markFileDisplayUuid = markFileDisplayUuid; - } - public boolean isRemoved() { return removed; } Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesOutputFactory.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesOutputFactory.java (.../SubmitFilesOutputFactory.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesOutputFactory.java (.../SubmitFilesOutputFactory.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -113,7 +113,7 @@ int urlIndex = 0; for (FileDetailsDTO filesDetailsDTO : files) { String fileUrl = "javascript:var dummy = window.open('" + serverUrl + "download/?uuid=" - + filesDetailsDTO.getDisplayUuid() + "&preferDownload=false&" + + filesDetailsDTO.getUuID() + "&preferDownload=false&" + AttributeNames.PARAM_TOOL_CONTENT_HANDLER_NAME + "=" + SbmtConstants.TOOL_CONTENT_HANDLER_NAME + "','" + filesDetailsDTO.getFileDescription() + "','resizable,scrollbars')"; Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java (.../SubmitFilesService.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java (.../SubmitFilesService.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -584,7 +584,7 @@ SubmitUser learner = submitUserDAO.getLearner(sessionID, userID); details.setLearner(learner); - details.setUuid(nodeKey.getNodeId()); + details.setUuid(nodeKey.getUuid()); details.setVersionID(nodeKey.getVersion()); SubmitFilesReport report = new SubmitFilesReport(); report.setDetails(details); @@ -647,8 +647,6 @@ for (SubmissionDetails submissionDetails : list) { if (includeRemovedFiles || !submissionDetails.isRemoved()) { FileDetailsDTO detailDto = new FileDetailsDTO(submissionDetails, numberFormat); - detailDto.setDisplayUuid(sbmtToolContentHandler.getFileUuid(detailDto.getUuID())); - detailDto.setMarkFileDisplayUuid(sbmtToolContentHandler.getFileUuid(detailDto.getMarkFileUUID())); details.add(detailDto); } } @@ -684,8 +682,6 @@ SubmitUserDTO submitUserDTO = new SubmitUserDTO(learner); FileDetailsDTO detailDto = new FileDetailsDTO(submissionDetails, numberFormat); - detailDto.setDisplayUuid(sbmtToolContentHandler.getFileUuid(detailDto.getUuID())); - detailDto.setMarkFileDisplayUuid(sbmtToolContentHandler.getFileUuid(detailDto.getMarkFileUUID())); userFileList = map.get(submitUserDTO); // if it is first time to this user, creating a new ArrayList for this user. if (userFileList == null) { @@ -703,11 +699,7 @@ @Override public FileDetailsDTO getFileDetails(Long detailID, Locale currentLocale) { SubmissionDetails details = submissionDetailsDAO.getSubmissionDetailsByID(detailID); - FileDetailsDTO detailDto = new FileDetailsDTO(details, - currentLocale != null ? NumberFormat.getInstance(currentLocale) : null); - detailDto.setDisplayUuid(sbmtToolContentHandler.getFileUuid(detailDto.getUuID())); - detailDto.setMarkFileDisplayUuid(sbmtToolContentHandler.getFileUuid(detailDto.getMarkFileUUID())); - return detailDto; + return new FileDetailsDTO(details, currentLocale != null ? NumberFormat.getInstance(currentLocale) : null); } @Override @@ -750,7 +742,7 @@ } report.setMarkFileName(markFile.getOriginalFilename()); - report.setMarkFileUUID(nodeKey.getNodeId()); + report.setMarkFileUUID(nodeKey.getUuid()); report.setMarkFileVersionID(nodeKey.getVersion()); } @@ -782,7 +774,7 @@ // IToolContentHandler.TYPE_ONLINE); report.setMarkFileName(markFile.getOriginalFilename()); - report.setMarkFileUUID(nodeKey.getNodeId()); + report.setMarkFileUUID(nodeKey.getUuid()); report.setMarkFileVersionID(nodeKey.getVersion()); } Index: lams_tool_sbmt/web/learner/sbmtlearner.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_sbmt/web/learner/sbmtlearner.jsp (.../sbmtlearner.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_sbmt/web/learner/sbmtlearner.jsp (.../sbmtlearner.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -395,7 +395,7 @@ - + Index: lams_tool_sbmt/web/monitoring/mark/fileinfo.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_sbmt/web/monitoring/mark/fileinfo.jsp (.../fileinfo.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_sbmt/web/monitoring/mark/fileinfo.jsp (.../fileinfo.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -34,13 +34,13 @@ - download/?uuid=${fileInfo.displayUuid}&versionID=${fileInfo.versionID}&preferDownload=false + download/?uuid=${fileInfo.uuID}&versionID=${fileInfo.versionID}&preferDownload=false "> - download/?uuid=${fileInfo.displayUuid}&versionID=${fileInfo.versionID}&preferDownload=true + download/?uuid=${fileInfo.uuID}&versionID=${fileInfo.versionID}&preferDownload=true "> Index: lams_tool_sbmt/web/monitoring/mark/filelist.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_sbmt/web/monitoring/mark/filelist.jsp (.../filelist.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_sbmt/web/monitoring/mark/filelist.jsp (.../filelist.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -50,13 +50,13 @@
    - download/?uuid=${fileInfo.markFileDisplayUuid}&versionID=${fileInfo.markFileVersionID}&preferDownload=false + download/?uuid=${fileInfo.markFileUUID}&versionID=${fileInfo.markFileVersionID}&preferDownload=false "> - download/?uuid=${fileInfo.markFileDisplayUuid}&versionID=${fileInfo.markFileVersionID}&preferDownload=true + download/?uuid=${fileInfo.markFileUUID}&versionID=${fileInfo.markFileVersionID}&preferDownload=true "> Index: lams_tool_sbmt/web/monitoring/mark/updatemark.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_sbmt/web/monitoring/mark/updatemark.jsp (.../updatemark.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_sbmt/web/monitoring/mark/updatemark.jsp (.../updatemark.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -99,14 +99,14 @@
    - download/?uuid=${fileInfo.markFileDisplayUuid}&versionID=${fileInfo.markFileVersionID}&preferDownload=false + download/?uuid=${fileInfo.markFileUUID}&versionID=${fileInfo.markFileVersionID}&preferDownload=false "> - download/?uuid=${fileInfo.markFileDisplayUuid}&versionID=${fileInfo.markFileVersionID}&preferDownload=true + download/?uuid=${fileInfo.markFileUUID}&versionID=${fileInfo.markFileVersionID}&preferDownload=true "> Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/model/TaskListItemAttachment.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/model/TaskListItemAttachment.java (.../TaskListItemAttachment.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/model/TaskListItemAttachment.java (.../TaskListItemAttachment.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -34,7 +34,6 @@ import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; -import javax.persistence.Transient; import org.apache.commons.lang.builder.EqualsBuilder; import org.apache.commons.lang.builder.HashCodeBuilder; @@ -75,9 +74,6 @@ @JoinColumn(name = "create_by") private TaskListUser createBy; - @Transient - private String fileDisplayUuid; - @Override public Object clone() { TaskListItemAttachment taskListItemAttachment = null; @@ -182,13 +178,4 @@ public void setCreateBy(TaskListUser createBy) { this.createBy = createBy; } - - public String getFileDisplayUuid() { - return fileDisplayUuid; - } - - public void setFileDisplayUuid(String fileDisplayUuid) { - this.fileDisplayUuid = fileDisplayUuid; - } - } \ No newline at end of file Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/service/TaskListServiceImpl.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/service/TaskListServiceImpl.java (.../TaskListServiceImpl.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/service/TaskListServiceImpl.java (.../TaskListServiceImpl.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -147,9 +147,8 @@ // create new attachement TaskListItemAttachment file = new TaskListItemAttachment(); - file.setFileUuid(nodeKey.getNodeId()); + file.setFileUuid(nodeKey.getUuid()); file.setFileVersionId(nodeKey.getVersion()); - file.setFileDisplayUuid(nodeKey.getUuid()); file.setFileName(uploadFile.getName()); file.setCreated(new Timestamp(new Date().getTime())); file.setCreateBy(user); @@ -203,21 +202,12 @@ // to skip CGLib problem Long contentId = session.getTaskList().getContentId(); TaskList taskList = taskListDao.getByContentId(contentId); - for (TaskListItem item : taskList.getTaskListItems()) { - for (TaskListItemAttachment attachment : item.getAttachments()) { - attachment.setFileDisplayUuid(taskListToolContentHandler.getFileUuid(attachment.getFileUuid())); - } - } return taskList; } @Override public TaskListItem getTaskListItemByUid(Long itemUid) { - TaskListItem item = taskListItemDao.getByUid(itemUid); - for (TaskListItemAttachment attachment : item.getAttachments()) { - attachment.setFileDisplayUuid(taskListToolContentHandler.getFileUuid(attachment.getFileUuid())); - } - return item; + return taskListItemDao.getByUid(itemUid); } @Override Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/MonitoringController.java =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/MonitoringController.java (.../MonitoringController.java) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -337,15 +337,29 @@ commentsFiles += "
  • "; for (TaskListItemAttachment userAttachment : userAttachments) { commentsFiles += HtmlUtils.htmlEscape(userAttachment.getFileName()) + " "; - commentsFiles += "" + label + ""; + commentsFiles += "" + label + + ""; } commentsFiles += "
  • "; } commentsFiles += ""; +// +// +//
  • +// +// +// +// +// +// +// +// +// +//
  • +//
    userData.add(commentsFiles); } @@ -407,7 +421,7 @@ } taskList.setSubmissionDeadline(tzSubmissionDeadline); taskListService.saveOrUpdateTaskList(taskList); - + return formattedDate; } Index: lams_tool_task/web/pages/learning/parts/filelist.jsp =================================================================== diff -u -r2de8f805211b6433aff4efd6fa9275a1b9933033 -rfdda1e8549f1e47b0e6967bc4868ec4eda33c775 --- lams_tool_task/web/pages/learning/parts/filelist.jsp (.../filelist.jsp) (revision 2de8f805211b6433aff4efd6fa9275a1b9933033) +++ lams_tool_task/web/pages/learning/parts/filelist.jsp (.../filelist.jsp) (revision fdda1e8549f1e47b0e6967bc4868ec4eda33c775) @@ -14,7 +14,7 @@
  • [] - download/?uuid=${file.fileDisplayUuid}&versionID=${file.fileVersionId}&preferDownload=true + download/?uuid=${file.fileUuid}&versionID=${file.fileVersionId}&preferDownload=true