com.atlassian.jira.issue.managers
Class DefaultAttachmentManager

java.lang.Object
  extended bycom.atlassian.jira.issue.managers.DefaultAttachmentManager
All Implemented Interfaces:
AttachmentManager

public class DefaultAttachmentManager
extends Object
implements AttachmentManager


Constructor Summary
DefaultAttachmentManager(IssueManager issueManager, org.ofbiz.core.entity.DelegatorInterface genericDelegator, MimeManager mimeManager, PermissionManager permissionManager, ApplicationProperties applicationProperties)
           
 
Method Summary
 ChangeItemBean createAttachment(File file, String filename, String contentType, User remoteUser, org.ofbiz.core.entity.GenericValue issue)
           
 ChangeItemBean createAttachment(File file, String filename, String contentType, User remoteUser, org.ofbiz.core.entity.GenericValue issue, Map attachmentProperties, Date createdTime)
          Create an attachment both on disk, and in the database.
 Attachment createAttachment(org.ofbiz.core.entity.GenericValue issue, User author, String mimetype, String filename, Long filesize, Map attachmentProperties, Date createdTime)
          Create an attachment in the database.
protected  void createAttachmentOnDisk(Attachment attachment, File file, User user)
           
 void deleteAttachment(Attachment attachment)
          Delete an attachment from the database and from disk
 void deleteAttachmentDirectory(org.ofbiz.core.entity.GenericValue issue)
          Delete the attachment directory from disk if the directory is empty
 Attachment getAttachment(Long id)
          Get a single attachment by its id.
 List getAttachments(org.ofbiz.core.entity.GenericValue issue)
          Get a list of all attachments for a certain issue
 List getAttachments(Issue issue)
          Get a list of all attachments for a certain issue
 boolean isAttachable(User user, org.ofbiz.core.entity.GenericValue entity)
          Determine if this user can attach a file to this issue.
 boolean isAttachable(User user, org.ofbiz.core.entity.GenericValue entity, boolean issueCreation)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultAttachmentManager

public DefaultAttachmentManager(IssueManager issueManager,
                                org.ofbiz.core.entity.DelegatorInterface genericDelegator,
                                MimeManager mimeManager,
                                PermissionManager permissionManager,
                                ApplicationProperties applicationProperties)
Method Detail

getAttachment

public Attachment getAttachment(Long id)
                         throws org.ofbiz.core.entity.GenericEntityException
Get a single attachment by its id.

Specified by:
getAttachment in interface AttachmentManager
Returns:
The attachment, or null if that id was not found.
Throws:
org.ofbiz.core.entity.GenericEntityException

getAttachments

public List getAttachments(org.ofbiz.core.entity.GenericValue issue)
Get a list of all attachments for a certain issue

Specified by:
getAttachments in interface AttachmentManager
Returns:
a list of Attachment objects

getAttachments

public List getAttachments(Issue issue)
Description copied from interface: AttachmentManager
Get a list of all attachments for a certain issue

Specified by:
getAttachments in interface AttachmentManager
Returns:
a list of Attachment objects

createAttachment

public Attachment createAttachment(org.ofbiz.core.entity.GenericValue issue,
                                   User author,
                                   String mimetype,
                                   String filename,
                                   Long filesize,
                                   Map attachmentProperties,
                                   Date createdTime)
                            throws org.ofbiz.core.entity.GenericEntityException
Description copied from interface: AttachmentManager
Create an attachment in the database. Note that this does not create it on disk, nor does it create a change item.

Specified by:
createAttachment in interface AttachmentManager
Parameters:
attachmentProperties - Attachment properties (a Map of String -> Object properties).
createdTime -
Throws:
org.ofbiz.core.entity.GenericEntityException

deleteAttachment

public void deleteAttachment(Attachment attachment)
                      throws RemoveException,
                             org.ofbiz.core.entity.GenericEntityException
Description copied from interface: AttachmentManager
Delete an attachment from the database and from disk

Specified by:
deleteAttachment in interface AttachmentManager
Throws:
RemoveException - if the attachment cannot be removed from the disk
org.ofbiz.core.entity.GenericEntityException

deleteAttachmentDirectory

public void deleteAttachmentDirectory(org.ofbiz.core.entity.GenericValue issue)
                               throws RemoveException,
                                      org.ofbiz.core.entity.GenericEntityException
Description copied from interface: AttachmentManager
Delete the attachment directory from disk if the directory is empty

Specified by:
deleteAttachmentDirectory in interface AttachmentManager
Parameters:
issue - the attachment directory for the issue
Throws:
RemoveException - if the directory can not be removed or is not empty
org.ofbiz.core.entity.GenericEntityException

isAttachable

public boolean isAttachable(User user,
                            org.ofbiz.core.entity.GenericValue entity)
Description copied from interface: AttachmentManager
Determine if this user can attach a file to this issue. This method will return true if the user both has the permissions to attach the file, and attachments are enabled and working.

Specified by:
isAttachable in interface AttachmentManager
Parameters:
entity - Either a project or an Issue

isAttachable

public boolean isAttachable(User user,
                            org.ofbiz.core.entity.GenericValue entity,
                            boolean issueCreation)
Specified by:
isAttachable in interface AttachmentManager

createAttachment

public ChangeItemBean createAttachment(File file,
                                       String filename,
                                       String contentType,
                                       User remoteUser,
                                       org.ofbiz.core.entity.GenericValue issue,
                                       Map attachmentProperties,
                                       Date createdTime)
                                throws AttachmentException,
                                       org.ofbiz.core.entity.GenericEntityException
Description copied from interface: AttachmentManager
Create an attachment both on disk, and in the database.

Specified by:
createAttachment in interface AttachmentManager
Parameters:
contentType - The desired contentType. This may be modified if a better alternative is suggested by MimeManager.getSanitisedMimeType(String, String)
attachmentProperties - String -> Object property map
createdTime -
file - A file on a locally accessible filesystem
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)
remoteUser - The use who created this attachment
issue - The issue that this attachment is attached to
Throws:
AttachmentException
org.ofbiz.core.entity.GenericEntityException

createAttachment

public ChangeItemBean createAttachment(File file,
                                       String filename,
                                       String contentType,
                                       User remoteUser,
                                       org.ofbiz.core.entity.GenericValue issue)
                                throws AttachmentException,
                                       org.ofbiz.core.entity.GenericEntityException
Specified by:
createAttachment in interface AttachmentManager
Throws:
AttachmentException
org.ofbiz.core.entity.GenericEntityException

createAttachmentOnDisk

protected void createAttachmentOnDisk(Attachment attachment,
                                      File file,
                                      User user)
                               throws org.ofbiz.core.entity.GenericEntityException,
                                      AttachmentException
Throws:
org.ofbiz.core.entity.GenericEntityException
AttachmentException


Copyright © 2002-2007 Atlassian. All Rights Reserved.