public interface

AttachmentDirectoryAccessor

implements AttachmentHealth
com.atlassian.jira.issue.attachment.AttachmentDirectoryAccessor
Known Indirect Subclasses

Class Overview

Interface for a component that provides access to attachment directories. This is typically only useful for file-based attachment stores.

Summary

Public Methods
void checkValidAttachmentDirectory(Issue issue)
This method is deprecated. Use errors() instead. This method is here while AttachmentStore is still in jira-api.
void checkValidTemporaryAttachmentDirectory()
This method is deprecated. Use errors() instead. This method is here while AttachmentStore is still in jira-api.
@Nullable File getAttachmentDirectory(String issueKey)
File getAttachmentDirectory(Issue issue)
Returns the physical directory of the attachments for the given issue.
File getAttachmentDirectory(String attachmentDirectory, String projectKey, String issueKey)
Get the attachment directory for the given attachment base directory, project key, and issue key.
File getAttachmentDirectory(Issue issue, boolean createDirectory)
Returns the physical directory of the attachments for the given issue.
File getAttachmentRootPath()
Returns the path used to store all attachments across the system.
File getTemporaryAttachmentDirectory()
@Nonnull File getThumbnailDirectory(Issue issue)
Returns the physical directory of the thumbnails for the given issue, creating if necessary.
@Nonnull File getThumbnailDirectory(Issue issue, boolean createDirectory)
Returns the physical directory of the thumbnails for the given issue, creating if desired.
[Expand]
Inherited Methods
From interface com.atlassian.jira.issue.attachment.AttachmentHealth

Public Methods

public void checkValidAttachmentDirectory (Issue issue)

This method is deprecated.
Use errors() instead. This method is here while AttachmentStore is still in jira-api.

Checks that the Attachment directory of the given issue is right to go - writable, accessible etc. Will create it if necessary.

Parameters
issue the issue whose attachment directory to check.
Throws
AttachmentException if the directory is not writable or missing and cannot be created.

public void checkValidTemporaryAttachmentDirectory ()

This method is deprecated.
Use errors() instead. This method is here while AttachmentStore is still in jira-api.

Checks that the temporary directory where attachments can be uploaded is writeable.

Throws
AttachmentException if the directory is not writable or missing and cannot be created.

@Nullable public File getAttachmentDirectory (String issueKey)

public File getAttachmentDirectory (Issue issue)

Returns the physical directory of the attachments for the given issue. This will create it if necessary.

Parameters
issue the issue whose attachment directory you want
Returns
  • The issue's attachment directory.

public File getAttachmentDirectory (String attachmentDirectory, String projectKey, String issueKey)

Get the attachment directory for the given attachment base directory, project key, and issue key.

The idea is to encapsulate all of the path-joinery magic to make future refactoring easier if we ever decide to move away from attachment-base/project-key/issue-ket

Parameters
attachmentDirectory base of attachments
projectKey the project key the issue belongs to
issueKey the issue key for the issue
Returns
  • the directory attachments for this issue live in

public File getAttachmentDirectory (Issue issue, boolean createDirectory)

Returns the physical directory of the attachments for the given issue. This will create it if desired.

Parameters
issue the issue whose attachment directory you want
createDirectory If true, and the directory does not currently exist, then the directory is created.
Returns
  • the issue's attachment directory

public File getAttachmentRootPath ()

Returns the path used to store all attachments across the system.

Returns
  • the path used to store all attachments across the system.

public File getTemporaryAttachmentDirectory ()

@Nonnull public File getThumbnailDirectory (Issue issue)

Returns the physical directory of the thumbnails for the given issue, creating if necessary.

Parameters
issue the issue whose thumbnail directory you want
Returns
  • The issue's thumbnail directory.

@Nonnull public File getThumbnailDirectory (Issue issue, boolean createDirectory)

Returns the physical directory of the thumbnails for the given issue, creating if desired.

Parameters
issue the issue whose thumbnail directory you want
createDirectory If true, and the directory does not currently exist, then the directory is created.
Returns
  • The issue's thumbnail directory.