|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
@PublicApi public interface AttachmentManager
Manages all attachment related tasks in JIRA, which involves retrieving an attachment, creating an attachment and deleting an attachment.
Method Summary | ||
---|---|---|
boolean |
attachmentsEnabled()
Determine if attachments have been enabled in JIRA and if the attachments directory exists. |
|
List<ChangeItemBean> |
convertTemporaryAttachments(ApplicationUser user,
Issue issue,
List<Long> selectedAttachments,
TemporaryAttachmentsMonitor temporaryAttachmentsMonitor)
Converts a set of provided temporary attachments to real attachments attached to an issue. |
|
List<ChangeItemBean> |
convertTemporaryAttachments(com.atlassian.crowd.embedded.api.User user,
Issue issue,
List<Long> selectedAttachments,
TemporaryAttachmentsMonitor temporaryAttachmentsMonitor)
Deprecated. Use convertTemporaryAttachments(com.atlassian.jira.user.ApplicationUser, Issue, java.util.List, com.atlassian.jira.web.action.issue.TemporaryAttachmentsMonitor) instead. Since v6.0. |
|
ChangeItemBean |
createAttachment(CreateAttachmentParamsBean createAttachmentParamsBean)
Create an attachment both on disk, and in the database. |
|
ChangeItemBean |
createAttachment(File file,
String filename,
String contentType,
com.atlassian.crowd.embedded.api.User author,
org.ofbiz.core.entity.GenericValue issue)
Deprecated. Use createAttachment(File, String, String, User, Issue) instead. Since v5.0. |
|
ChangeItemBean |
createAttachment(File file,
String filename,
String contentType,
com.atlassian.crowd.embedded.api.User author,
org.ofbiz.core.entity.GenericValue issue,
Boolean zip,
Boolean thumbnailable,
Map<String,Object> attachmentProperties,
Date createdTime)
Deprecated. Use createAttachment(File, String, String, User, Issue, Map, Date) instead. Since v5.0. |
|
ChangeItemBean |
createAttachment(File file,
String filename,
String contentType,
com.atlassian.crowd.embedded.api.User author,
org.ofbiz.core.entity.GenericValue issue,
Map<String,Object> attachmentProperties,
Date createdTime)
Deprecated. Use createAttachment(File, String, String, User, Issue, Map, Date) instead. Since v5.0. |
|
ChangeItemBean |
createAttachment(File file,
String filename,
String contentType,
com.atlassian.crowd.embedded.api.User author,
Issue issue)
Deprecated. Use createAttachment(com.atlassian.jira.issue.attachment.CreateAttachmentParamsBean) instead. Since v6.0. |
|
ChangeItemBean |
createAttachment(File file,
String filename,
String contentType,
com.atlassian.crowd.embedded.api.User author,
Issue issue,
Boolean zip,
Boolean thumbnailable,
Map<String,Object> attachmentProperties,
Date createdTime)
Deprecated. Use createAttachment(com.atlassian.jira.issue.attachment.CreateAttachmentParamsBean) instead. Since v6.0. |
|
ChangeItemBean |
createAttachment(File file,
String filename,
String contentType,
com.atlassian.crowd.embedded.api.User author,
Issue issue,
Map<String,Object> attachmentProperties,
Date createdTime)
Deprecated. Use createAttachment(com.atlassian.jira.issue.attachment.CreateAttachmentParamsBean) instead. Since v6.0. |
|
Attachment |
createAttachment(org.ofbiz.core.entity.GenericValue issue,
com.atlassian.crowd.embedded.api.User author,
String mimetype,
String filename,
Long filesize,
Map<String,Object> attachmentProperties,
Date createdTime)
Deprecated. Use createAttachment(File, String, String, User, Issue, Map, Date) instead. Since v5.0. |
|
Attachment |
createAttachmentCopySourceFile(File file,
String filename,
String contentType,
String attachmentAuthor,
Issue issue,
Map<String,Object> attachmentProperties,
Date createdTime)
Deprecated. Use createAttachment(com.atlassian.jira.issue.attachment.CreateAttachmentParamsBean) instead. Since v6.0. |
|
void |
deleteAttachment(Attachment attachment)
Delete an attachment from the database and from disk. |
|
void |
deleteAttachmentDirectory(Issue issue)
Delete the attachment directory from disk if the directory is empty. |
|
Attachment |
getAttachment(Long id)
Get a single attachment by its ID. |
|
List<Attachment> |
getAttachments(Issue issue)
Get a list of all attachments for a certain issue. |
|
List<Attachment> |
getAttachments(Issue issue,
Comparator<? super Attachment> comparator)
Get a list of all attachments for a certain issue, sorted according to the specified comparator. |
|
boolean |
isScreenshotAppletEnabled()
Determine if screenshot applet has been enabled in JIRA. |
|
boolean |
isScreenshotAppletSupportedByOS()
Determine if the screenshot applet is supported by the user's operating system. |
|
void |
moveAttachments(Issue oldIssue,
String newIssueKey)
Move Issue attachments to a new directory. |
|
Attachment |
setThumbnailable(Attachment attachment,
boolean thumbnailable)
Stores the thumbnailble flag for this attachment |
|
Attachment |
setZip(Attachment attachment,
boolean zip)
Stores the zip flag for this attachment |
|
|
streamAttachmentContent(Attachment attachment,
InputStreamConsumer<T> consumer)
Get binary content of the attachment |
Method Detail |
---|
Attachment getAttachment(Long id) throws DataAccessException, AttachmentNotFoundException
id
- the Attachment ID
DataAccessException
- if there is a problem accessing the database.
AttachmentNotFoundException
- thrown if an attachment with the passed id does not exist.List<Attachment> getAttachments(Issue issue) throws DataAccessException
issue
- the Issue
Attachment
objects
DataAccessException
- if there is a problem accessing the database.List<Attachment> getAttachments(Issue issue, Comparator<? super Attachment> comparator) throws DataAccessException
issue
- the Issuecomparator
- used for sorting
Attachment
objects
DataAccessException
- if there is a problem accessing the database.Attachment createAttachmentCopySourceFile(File file, String filename, String contentType, String attachmentAuthor, Issue issue, Map<String,Object> attachmentProperties, Date createdTime) throws AttachmentException
createAttachment(com.atlassian.jira.issue.attachment.CreateAttachmentParamsBean)
instead. Since v6.0.
file
- A file on a locally accessible filesystem, this will be copied, not moved.filename
- The desired filename for this attachment. This may be different to the filename on disk (for example with temp files used in file uploads)contentType
- The desired contentType. Implementations of this interface can choose to override this value as appropriateattachmentAuthor
- The username of the user who created this attachment, this is not validated so it must be a valid usernameissue
- The id of the issue that this attachment is attached toattachmentProperties
- Attachment properties (a Map of String -> Object properties). These are optional,
and are used to populate a PropertySet on the Attachment (Attachment.getProperties()
. Pass null to set no propertiescreatedTime
- when the attachment was created
AttachmentException
- if any errors occur.ChangeItemBean createAttachment(File file, String filename, String contentType, com.atlassian.crowd.embedded.api.User author, Issue issue, Map<String,Object> attachmentProperties, Date createdTime) throws AttachmentException
createAttachment(com.atlassian.jira.issue.attachment.CreateAttachmentParamsBean)
instead. Since v6.0.
file
- A file on a locally accessible filesystemfilename
- The desired filename for this attachment. This may be different to the filename on disk (for example with temp files used in file uploads)contentType
- The desired contentType. Implementations of this interface can choose to override this value as appropriateauthor
- The user who created this attachmentissue
- The issue that this file is to be attached toattachmentProperties
- Attachment properties (a Map of String -> Object properties). These are optional,
and are used to populate a PropertySet on the Attachment (Attachment.getProperties()
. Pass null to set no propertiescreatedTime
- the created time
ChangeItemBean
with all the changes to the issue.
AttachmentException
- if an IO error occurs while attempting to copy the filecreateAttachment(java.io.File, String, String, com.atlassian.crowd.embedded.api.User, Issue)
ChangeItemBean createAttachment(File file, String filename, String contentType, com.atlassian.crowd.embedded.api.User author, Issue issue, @Nullable Boolean zip, @Nullable Boolean thumbnailable, Map<String,Object> attachmentProperties, Date createdTime) throws AttachmentException
createAttachment(com.atlassian.jira.issue.attachment.CreateAttachmentParamsBean)
instead. Since v6.0.
file
- A file on a locally accessible filesystemfilename
- The desired filename for this attachment. This may be different to the filename on disk (for example with temp files used in file uploads)contentType
- The desired contentType. Implementations of this interface can choose to override this value as appropriateauthor
- The user who created this attachmentissue
- The issue that this file is to be attached tozip
- This file is a zip file. Null indicates that it is not know if this attachment is a zip file or notthumbnailable
- This file is thumbnailable (e.g. a png image). Null indicates that it is not know if this attachment is thumbnailable or notattachmentProperties
- Attachment properties (a Map of String -> Object properties). These are optional,
and are used to populate a PropertySet on the Attachment (Attachment.getProperties()
. Pass null to set no propertiescreatedTime
- the created time
ChangeItemBean
with all the changes to the issue.
AttachmentException
- if an IO error occurs while attempting to copy the filecreateAttachment(java.io.File, String, String, com.atlassian.crowd.embedded.api.User, Issue)
ChangeItemBean createAttachment(File file, String filename, String contentType, com.atlassian.crowd.embedded.api.User author, org.ofbiz.core.entity.GenericValue issue, Map<String,Object> attachmentProperties, Date createdTime) throws AttachmentException
createAttachment(File, String, String, User, Issue, Map, Date)
instead. Since v5.0.
file
- A file on a locally accessible filesystemfilename
- The desired filename for this attachment. This may be different to the filename on disk (for example with temp files used in file uploads)contentType
- The desired contentType. Implementations of this interface can choose to override this value as appropriateauthor
- The user who created this attachmentissue
- The issue that this attachment is attached toattachmentProperties
- Attachment properties (a Map of String -> Object properties). These are optional,
and are used to populate a PropertySet on the Attachment (Attachment.getProperties()
. Pass null to set no propertiescreatedTime
- the created time
ChangeItemBean
with all the changes to the issue.
AttachmentException
- if an error occurs while attempting to copy the fileChangeItemBean createAttachment(File file, String filename, String contentType, com.atlassian.crowd.embedded.api.User author, org.ofbiz.core.entity.GenericValue issue, Boolean zip, Boolean thumbnailable, Map<String,Object> attachmentProperties, Date createdTime) throws AttachmentException
createAttachment(File, String, String, User, Issue, Map, Date)
instead. Since v5.0.
file
- A file on a locally accessible filesystemfilename
- The desired filename for this attachment. This may be different to the filename on disk (for example with temp files used in file uploads)contentType
- The desired contentType. Implementations of this interface can choose to override this value as appropriateauthor
- The user who created this attachmentissue
- The issue that this attachment is attached tozip
- This file is a zip file. Null indicates that it is not know if this attachment is a zip file or notthumbnailable
- This file is thumbnailable (e.g. a png image). Null indicates that it is not know if this attachment is thumbnailable or notattachmentProperties
- Attachment properties (a Map of String -> Object properties). These are optional,
and are used to populate a PropertySet on the Attachment (Attachment.getProperties()
. Pass null to set no propertiescreatedTime
- the created time
ChangeItemBean
with all the changes to the issue.
AttachmentException
- if an error occurs while attempting to copy the fileChangeItemBean createAttachment(File file, String filename, String contentType, com.atlassian.crowd.embedded.api.User author, Issue issue) throws AttachmentException
createAttachment(com.atlassian.jira.issue.attachment.CreateAttachmentParamsBean)
instead. Since v6.0.
createAttachment(File, String, String, User, Issue, Map, Date)
method, except it submits no
attachmentProperties and uses now() for the created time.
file
- A file on a locally accessible filesystemfilename
- The desired filename for this attachment. This may be different to the filename on disk (for example with temp files used in file uploads)contentType
- The desired contentType. Implementations of this interface can choose to override this value as appropriateauthor
- The user who created this attachmentissue
- The issue that this attachment is attached to
ChangeItemBean
with all the changes to the issue.
AttachmentException
- if an IO error occurs while attempting to copy the filecreateAttachment(java.io.File, String, String, com.atlassian.crowd.embedded.api.User, Issue, java.util.Map, java.util.Date)
ChangeItemBean createAttachment(File file, String filename, String contentType, com.atlassian.crowd.embedded.api.User author, org.ofbiz.core.entity.GenericValue issue) throws AttachmentException
createAttachment(File, String, String, User, Issue)
instead. Since v5.0.
createAttachment(java.io.File, String, String, User, org.ofbiz.core.entity.GenericValue, java.util.Map, java.util.Date)
method, except it
submits no attachmentProperties and uses now() for the created time.
file
- A file on a locally accessible filesystemfilename
- The desired filename for this attachment. This may be different to the filename on disk (for example with temp files used in file uploads)contentType
- The desired contentType. Implementations of this interface can choose to override this value as appropriateauthor
- The user who created this attachmentissue
- The issue that this attachment is attached to
ChangeItemBean
with all the changes to the issue.
AttachmentException
- if an error occurs while attempting to copy the fileAttachment createAttachment(org.ofbiz.core.entity.GenericValue issue, com.atlassian.crowd.embedded.api.User author, String mimetype, String filename, Long filesize, Map<String,Object> attachmentProperties, Date createdTime)
createAttachment(File, String, String, User, Issue, Map, Date)
instead. Since v5.0.
issue
- the issue that this attachment is attached toauthor
- The user who created this attachmentmimetype
- mimetypefilename
- The desired filename for this attachment.filesize
- filesizeattachmentProperties
- Attachment properties (a Map of String -> Object properties).createdTime
- when the attachment was created
ChangeItemBean createAttachment(CreateAttachmentParamsBean createAttachmentParamsBean) throws AttachmentException
createAttachmentParamsBean
- Parameters which describe created attachment
ChangeItemBean
with all the changes to the issue.
AttachmentException
- if an IO error occurs while attempting to copy the filefor creating beans
void deleteAttachment(Attachment attachment) throws RemoveException
attachment
- the Attachment
RemoveException
- if the attachment cannot be removed from the diskvoid deleteAttachmentDirectory(Issue issue) throws RemoveException
issue
- the issue whose attachment directory we wish to delete.
RemoveException
- if the directory can not be removed or is not empty.boolean attachmentsEnabled()
boolean isScreenshotAppletEnabled()
boolean isScreenshotAppletSupportedByOS()
List<ChangeItemBean> convertTemporaryAttachments(com.atlassian.crowd.embedded.api.User user, Issue issue, List<Long> selectedAttachments, TemporaryAttachmentsMonitor temporaryAttachmentsMonitor) throws AttachmentException
convertTemporaryAttachments(com.atlassian.jira.user.ApplicationUser, Issue, java.util.List, com.atlassian.jira.web.action.issue.TemporaryAttachmentsMonitor)
instead. Since v6.0.
user
- The user performing the actionissue
- The issue attachments should be linked toselectedAttachments
- The temporary attachment ids to convert as selected by the usertemporaryAttachmentsMonitor
- TemporaryAttachmentsMonitor containing information about all temporary attachments
AttachmentException
- If there were problems with the Attachment itselfList<ChangeItemBean> convertTemporaryAttachments(ApplicationUser user, Issue issue, List<Long> selectedAttachments, TemporaryAttachmentsMonitor temporaryAttachmentsMonitor) throws AttachmentException
user
- The user performing the actionissue
- The issue attachments should be linked toselectedAttachments
- The temporary attachment ids to convert as selected by the usertemporaryAttachmentsMonitor
- TemporaryAttachmentsMonitor containing information about all temporary attachments
AttachmentException
- If there were problems with the Attachment itselfAttachment setThumbnailable(Attachment attachment, boolean thumbnailable)
attachment
- The attachmentthumbnailable
- True if this attachment is thumnailableAttachment setZip(Attachment attachment, boolean zip)
attachment
- The attachmentzip
- True if this attachment is a zip file<T> T streamAttachmentContent(Attachment attachment, InputStreamConsumer<T> consumer) throws IOException
attachment
- consumer
-
IOException
void moveAttachments(Issue oldIssue, String newIssueKey)
oldIssue
- the issue attachments will be moved fromnewIssueKey
- the new issue key
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |