Interface AttachmentService

All Known Implementing Classes:
AttachmentServiceImpl

public interface AttachmentService
Provides methods for creating, reading, updating and deleting Confluence Attachment Content objects.
Since:
5.5
  • Field Details

    • COMMENT_METADATA_KEY

      static final String COMMENT_METADATA_KEY
      Attachment Comments are stored in the Content metadata as the "comment" entry.
      See Also:
    • MEDIA_TYPE_METADATA_KEY

      static final String MEDIA_TYPE_METADATA_KEY
      Attachment Media Type is stored in the Content metadata as the "mediaType" entry.
      See Also:
    • LABELS_METADATA_KEY

      static final String LABELS_METADATA_KEY
      Attachment Labels is stored in the Content metadata as the "labels" entry.
      See Also:
    • FILE_SIZE

      static final String FILE_SIZE
      Attachment file size is stored in the Content as the "fileSize" extension property.
      See Also:
  • Method Details

    • addAttachments

      PageResponse<Content> addAttachments(ContentId containerId, Collection<AttachmentUpload> uploads) throws ServiceException
      Add one or more attachments to a piece of Content.
      Parameters:
      containerId - the id of the content to attach to
      uploads - the attachments being uploaded
      Returns:
      the attachments added
      Throws:
      ServiceException
    • addAttachments

      PageResponse<Content> addAttachments(ContentId containerId, ContentStatus containerStatus, Collection<AttachmentUpload> uploads) throws ServiceException
      Add one or more attachments to a piece of Content.
      Parameters:
      containerId - the id of the content to attach to
      containerStatus - the status of the container, specifically allows adding attachments to drafts
      uploads - the attachments being uploaded
      Returns:
      the attachments added
      Throws:
      ServiceException
    • addAttachments

      PageResponse<Content> addAttachments(ContentId containerId, ContentStatus containerStatus, Collection<AttachmentUpload> uploads, boolean allowDuplicated, Expansions expansions) throws ServiceException
      Add one or more attachments to a piece of Content.
      Parameters:
      containerId - the id of the content to attach to
      containerStatus - the status of the container, specifically allows adding attachments to drafts
      uploads - the attachments being uploaded
      expansions - the expansions to apply to the values returned after uploaded
      Returns:
      the attachments added
      Throws:
      ServiceException
    • find

      Creates an attachment finder for locating attachments.

      Currently an attachment finder requires a Content container id, unless the attachment is being requested by its id via the "withId" method.

      For example, to locate an attachment in a given page with a particular filename:

       
      
       Content attachment = attachmentService.find()
            .withContainerId(pageId)
            .withFilename("myfile.txt")
            .fetchOneOrNull();
       
       
      Parameters:
      expansions - the expansions to apply to the values returned from a fetch
      Returns:
      an AttachmentFinder
    • update

      Content update(Content attachment) throws ServiceException
      Updates the non-data parts of an Attachment Content instance.

      This method can be used to update the container, filename, media-type and comment of an Attachment.

      Parameters:
      attachment - the attachment to update, must include an id
      Returns:
      the updated attachment as stored in the database
      Throws:
      ServiceException
    • updateData

      Content updateData(ContentId attachmentId, AttachmentUpload upload) throws ServiceException
      Updates the data part of an Attachment Content instance.
      Parameters:
      attachmentId - the id of the attachment to update
      upload - the new content of the Attachment
      Returns:
      the updated attachment as stored in the database
      Throws:
      ServiceException
    • validator

      Provides a validator for validating actions on the AttachmentService and checking permissions related to attachments on Content
      Returns:
      an attachmentService Validator
    • delete

      void delete(Content attachment) throws ServiceException
      Moves an Attachment to trash. Before Confluence 5.8 this used to remove the attachment without trashing it.
      Parameters:
      attachment - the content to trash
      Throws:
      ServiceException - if the content cannot be found, or cannot be deleted