public void hideAttachment(Attachment attachment) { if (null != attachment) setContentProperty(attachment.getContent(), WEBDAV_CONTENT_PROP_ATTACHMENT_PREFIX + attachment.getFileName(), Boolean.TRUE.toString()); }
@Nullable private String extractUrlPath(final Attachment attachment) { final ContentEntityObject container = attachment.getContainer(); return container != null ? container.getUrlPath() : null; }
private Attachment saveChartImageAsAttachment(ContentEntityObject attachmentContent, String attachmentMimeType, String attachmentFileName, byte[] chartImageBytes, String comment, Attachment currentVersionOfAttachment) throws IOException { Attachment previousVersionOfAttachment = null != currentVersionOfAttachment && currentVersionOfAttachment.isPersistent() ? (Attachment) currentVersionOfAttachment.clone() : null; Attachment chartImageAttachment = null == previousVersionOfAttachment ? new Attachment() : currentVersionOfAttachment; chartImageAttachment.setContainer(attachmentContent); chartImageAttachment.setMediaType(attachmentMimeType); chartImageAttachment.setVersionComment(comment); chartImageAttachment.setFileName(attachmentFileName); chartImageAttachment.setFileSize(chartImageBytes.length); if(null == previousVersionOfAttachment) attachmentContent.addAttachment(chartImageAttachment); attachmentManager.saveAttachment(chartImageAttachment, previousVersionOfAttachment, new ByteArrayInputStream(chartImageBytes)); return chartImageAttachment; }
public RemoteAttachment(Attachment attachment) { downloadUrl = attachment.getDownloadPath(); comment = attachment.getVersionComment(); name = attachment.getFileName(); size = attachment.getFileSize(); }
Attachment newAttachment = new Attachment(); newAttachment.setFileName(attachment.getFileName()); newAttachment.setContentType(attachment.getContentType()); newAttachment.setFileSize(attachment.getFileSize()); newAttachment.setCreatorName(AuthenticatedUserThreadLocal.getUser().getName()); InputStream in = attachment.getContentsAsStream(); attachmentManager.saveAttachment(newAttachment, null, in); in.close();
attachment = new Attachment(); } else { previousVersionOfAttachment = (Attachment) attachment.clone(); if ((!fileName.startsWith("._") && inputContentFile.length() > 0) || fileName.startsWith("._") || !attachment.isPersistent()) { User user = AuthenticatedUserThreadLocal.getUser(); attachment.setFileName(fileName); attachment.setFileSize(inputContentFile.length()); attachment.setCreatorName(user.getName()); attachment.setCreationDate(new Date()); attachment.setLastModifierName(user.getName()); attachment.setLastModificationDate(attachment.getCreationDate()); attachment.setContent(ceo); attachment.setContentType(StringUtils.isBlank(inputContext.getContentType()) ? FileTypeUtil.getContentType(fileName) : inputContext.getContentType());
private StringBuilder getAttachmentWikiLink( Attachment attachment, PageContext ctx ) { StringBuilder buff; if ( !( attachment.getContent() instanceof AbstractPage ) ) { buff = new StringBuilder().append( GeneralUtil.getGlobalSettings().getBaseUrl() ).append( attachment.getUrlPath() ); } else { if ( ctx == null || !ctx.getEntity().equals( attachment.getContent() ) ) buff = getContentEntityWikiLink( attachment.getContent(), ctx ); else buff = new StringBuilder(); buff.append( "^" ).append( attachment.getFileName() ); } return buff; }
protected Map<String, String> getHeaders() { return attachmentSafeContentHeaderGuesser.computeAttachmentHeaders( getAttachment().getContentType(), getAttachment().getFileName(), userAgent, getContentLength(), false, Collections.<String, String>emptyMap()); }
public String getName() { return attachment.getFileName(); }
String theAttachmentFileName = theAttachment.getFileName(); String attachmentVersion = getStringParameter(parameters, "attachmentversion", NEW); theAttachmentContentEntity = theAttachment.getContainer(); if (StringUtils.equals(NEW, attachmentVersion) && !permissionManager.hasCreatePermission(currentUser, theAttachmentContentEntity, Attachment.class)) throw new MacroExecutionException(String.format("Export not valid. Not authorized to add %s from page: %s (%d)", theAttachmentFileName, theAttachmentContentEntity.getTitle(), theAttachmentContentEntity.getId()));
Attachment attachmentCopy = (Attachment) attachment.clone(); attachmentCopy.setId(0); attachmentCopy.setVersion(1); attachmentCopy.setContent(destinationPage); attachmentCopy.setFileName(destinationAttachmentName);
private List<Attachment> filterAttachments(final FilterParams filterParams, List<Attachment> attachments) { Predicate<Attachment> filter = Predicates.alwaysTrue(); Function<Attachment, String> attachmentToNameFn = input -> input.getFileName(); if (!filterParams.include.isEmpty()) { filter = Predicates.and(filter, Predicates.compose(Predicates.in(filterParams.include), attachmentToNameFn)); } if (!filterParams.exclude.isEmpty()) { filter = Predicates.and(filter, Predicates.not(Predicates.compose(Predicates.in(filterParams.exclude), attachmentToNameFn))); } if (!filterParams.excludeLabels.isEmpty()) { filter = Predicates.and(filter, Predicates.not((Predicate<Attachment>) input -> { for (Label label : input.getLabels()) { if (filterParams.excludeLabels.contains(label.getName())) return true; } return false; })); } if (!filterParams.includeLabels.isEmpty()) { filter = Predicates.and(filter, input -> { for (Label label : input.getLabels()) { if (filterParams.includeLabels.contains(label.getName())) return true; } return false; }); } ; return Lists.newArrayList(Iterables.filter(attachments, filter)); }
public void addFields(Document document, StringBuffer sb, Searchable searchable) { if (searchable instanceof Attachment) { Attachment a = (Attachment) searchable; if (ImageThumbnailRenderer.isSupportedMimeType(a.getContentType())) { try { ThumbnailInfo info = thumbnailManager.getThumbnailInfo((Attachment) searchable); document.add(new Field(IMG_WIDTH_FIELD, Integer.toString(info.getOriginalWidth()), Field.Store.YES, Field.Index.NO)); document.add(new Field(IMG_HEIGHT_FIELD, Integer.toString(info.getOriginalHeight()), Field.Store.YES, Field.Index.NO)); document.add(new Field(IMG_URL_FIELD, a.getDownloadPathWithoutVersion(), Field.Store.YES, Field.Index.NO)); document.add(new Field(THUMB_URL_FIELD, info.getThumbnailUrlPath(), Field.Store.YES, Field.Index.NO)); document.add(new Field(THUMB_HEIGHT_FIELD, Integer.toString(info.getThumbnailHeight()), Field.Store.YES, Field.Index.NO)); document.add(new Field(THUMB_WIDTH_FIELD, Integer.toString(info.getThumbnailWidth()), Field.Store.YES, Field.Index.NO)); } catch (CannotGenerateThumbnailException e) { log.info("Exception thrown when generating thumbnail for attachment", e); } } } } }
private DataHandler createAvatarDataHandler(User user) throws MessagingException, IOException { PropertySet propertySet = userAccessor.getPropertySet(user); if (propertySet == null) return createWebResourceDataHandler(ProfilePictureInfo.DEFAULT_PROFILE_PATH); String profilePicture = propertySet.getString(UserPreferencesKeys.PROPERTY_USER_PROFILE_PICTURE); if (profilePicture == null) { return createWebResourceDataHandler(ProfilePictureInfo.DEFAULT_PROFILE_PATH); } if (profilePicture.startsWith(UserAccessor.PROFILE_PICTURE_BUILTIN_PATH)) { return createWebResourceDataHandler(profilePicture); } PersonalInformation personalInformation = personalInformationManager.getPersonalInformation(user); if (personalInformation == null) return createWebResourceDataHandler(ProfilePictureInfo.DEFAULT_PROFILE_PATH); Attachment a = attachmentManager.getAttachment(personalInformation, profilePicture); if (a != null) { return new DataHandler(new ProfileImageDataSource(new ByteArrayDataSource(a.getContentsAsStream(), a.getContentType()))); } return null; }
private Object getSpaceKey( T object ) { ConfluenceEntityObject entity = getEntity( object ); if ( entity instanceof Attachment ) { entity = ( ( Attachment ) entity ).getContent(); } if ( entity instanceof SpaceContentEntityObject ) { return ( ( SpaceContentEntityObject ) entity ).getSpaceKey(); } else if ( entity instanceof Space ) { return ( ( Space ) entity ).getKey(); } return ""; }
private String renderPage(final SearchResult searchResult, final SearchResultRenderContext renderContext, final AbstractPage page) { final List<Attachment> attachments = page.getLatestVersionsOfAttachments(); final List<ThumbnailInfo> thumbnails = new ArrayList<ThumbnailInfo>(); for (final Attachment att : attachments) { if (SUPPORTED_MIMETYPES.contains(att.getContentType())) { try { thumbnails.add(thumbnailManager.getThumbnailInfo(att)); } catch (CannotGenerateThumbnailException e) { log.error("Cannot generate thumbnail info for: " + att, e); } } } return getRenderedTemplate(VM_TEMPLATE, buildVelocityContext(searchResult, renderContext, page, thumbnails)); }
private String getChartImageHtml(boolean thumbnail, Attachment chartImage) throws CannotGenerateThumbnailException { StringBuilder chartImageHtml = new StringBuilder("<span class=\"image-wrap\">"); if (thumbnail && thumbnailManager.isThumbnailable(chartImage)) { thumbnailManager.getThumbnail(chartImage); ThumbnailInfo thumbnailInfo = thumbnailManager.getThumbnailInfo(chartImage); chartImageHtml.append( String.format( "<a class=\"confluence-thumbnail-link\" href=\"%s%s\"><img src=\"%s\" width=\"%d\" height=\"%d\"></a>", settingsManager.getGlobalSettings().getBaseUrl(), chartImage.getDownloadPathWithoutVersion(), thumbnailInfo.getThumbnailUrlPath(), thumbnailInfo.getThumbnailWidth(), thumbnailInfo.getThumbnailHeight() ) ); } else { chartImageHtml.append(String.format("<img src=\"%s%s\">", settingsManager.getGlobalSettings().getBaseUrl(), chartImage.getDownloadPath())); } return chartImageHtml.append("</span>").toString(); }
public String getDownloadPath() { return attachment.getDownloadPath(); }
protected long getCreationtTime() { return getAttachment().getCreationDate().getTime(); }
Attachment newAttachment = new Attachment(); newAttachment.setFileName(attachment.getFileName()); newAttachment.setContentType(attachment.getContentType()); newAttachment.setFileSize(attachment.getFileSize()); newAttachment.setCreatorName(user.getName());