private boolean addAttachment(CommentsViewerProperties properties, Comment comment) { if (ListUtil.isEmpty(properties.getUploadedFiles())) { return true; } try { ICFileHome fileHome = getFileHome(); for (String uploadedFile : properties.getUploadedFiles()) { if (!uploadedFile.startsWith(CoreConstants.WEBDAV_SERVLET_URI)) { uploadedFile = new StringBuilder(CoreConstants.WEBDAV_SERVLET_URI).append(uploadedFile).toString(); } ICFile file = fileHome.create(); file.setName( URLEncoder.encode( uploadedFile.substring(uploadedFile.lastIndexOf(CoreConstants.SLASH) + 1), CoreConstants.ENCODING_UTF8)); file.setFileUri(URLEncoder.encode(uploadedFile, CoreConstants.ENCODING_UTF8)); file.store(); comment.addAttachment(file); } comment.store(); return true; } catch (Exception e) { LOGGER.log(Level.WARNING, "Unable to add attachments: " + properties.getUploadedFiles(), e); } return false; }
public ICFile getCommentAttachment(String icFileId) { try { ICFileHome fileHome = getFileHome(); return fileHome.findByPrimaryKey(icFileId); } catch (Exception e) { LOGGER.log(Level.WARNING, "Error getting ICFile: " + icFileId, e); } return null; }