Class DefaultAttachmentIndexManager

java.lang.Object
com.atlassian.jira.issue.managers.DefaultAttachmentIndexManager
All Implemented Interfaces:
AttachmentIndexManager

public class DefaultAttachmentIndexManager extends Object implements AttachmentIndexManager
  • Constructor Details

  • Method Details

    • processAttachmentAndCreateIndex

      public void processAttachmentAndCreateIndex(@Nonnull File file, @Nonnull Attachment attachment, @Nonnull Issue issue)
      Description copied from interface: AttachmentIndexManager
      This methods generates the index of and archive file. It looks up for plugins that can handle processing file with certain extension. Then it stores given attachment index to database.

      Note that after processing file other than archive its index will still be saved as an empty JSON array ("[]") in order to store information that this file was already processed so that getAttachmentContents will not call this method unnecessarily on each issue display.

      Specified by:
      processAttachmentAndCreateIndex in interface AttachmentIndexManager
      Parameters:
      file - attachment.
      attachment - for which index provided.
      issue - to which attachment belongs.
    • processAttachmentAndCreateIndex

      protected io.atlassian.fugue.Option<AttachmentArchive> processAttachmentAndCreateIndex(@Nonnull File file, @Nonnull Attachment attachment, @Nonnull Issue issue, int maxEntries)
    • getAttachmentContents

      public io.atlassian.fugue.Option<AttachmentArchive> getAttachmentContents(@Nonnull Attachment attachment, @Nonnull Issue issue, int maxEntries)
      Description copied from interface: AttachmentIndexManager
      Retrieves index of given attachment file. If the index does not exist tries to obtain Attachment file from AttachmentStore and if obtained saves its index to the database.
      Specified by:
      getAttachmentContents in interface AttachmentIndexManager
      Parameters:
      attachment - for which index will be retrieved.
      issue - to which attachment belongs.
      maxEntries - maximum number of entries that should be returned in
      Returns:
      Option.none if no index was found or contents that were retrieved from database.
    • removeAttachmentIndex

      public void removeAttachmentIndex(@Nonnull Attachment attachment, @Nonnull Issue issue)
      Description copied from interface: AttachmentIndexManager
      Removes the index data of the specified attachment.
      Specified by:
      removeAttachmentIndex in interface AttachmentIndexManager
      Parameters:
      attachment - for which index file will be removed.
      issue - to which attachment belongs.
    • isExpandable

      public boolean isExpandable(Attachment attachment)
      Description copied from interface: AttachmentIndexManager
      Checks if provided attachment is currently expandable.
      Specified by:
      isExpandable in interface AttachmentIndexManager
      Parameters:
      attachment - to be tested.
      Returns:
      true only if attachment can be expanded by JIRA.