com.atlassian.jira.web.action.issue
Class TemporaryAttachmentsMonitor

java.lang.Object
  extended by com.atlassian.jira.web.action.issue.TemporaryAttachmentsMonitor
All Implemented Interfaces:
EventListener, javax.servlet.http.HttpSessionBindingListener

@PublicApi
public class TemporaryAttachmentsMonitor
extends Object
implements javax.servlet.http.HttpSessionBindingListener

This class maintains a list of temporary attachments uploaded by a user. When the user's session expires or the user logs out, it is responsible of deleting any temporary files that were not converted to proper attachments.

Since:
v4.2

Constructor Summary
TemporaryAttachmentsMonitor()
           
 
Method Summary
 void add(TemporaryAttachment temporaryAttachment)
          Adds temporary attachments to the interally maintained list of temporary attachements
 void clearEntriesForFormToken(String formToken)
          Removes all temporary attachments for the given formToken.
 void clearEntriesForIssue(Long issueId)
          Deprecated. since 6.3 use clearEntriesForFormToken(String) instead.
 Collection<TemporaryAttachment> getByFormToken(String formToken)
          Returns all temporary attachments, which were bound to given form token.
 TemporaryAttachment getById(Long id)
          Returns matching temporary attachment by attachment id.
 Collection<TemporaryAttachment> getByIssueId(Long issueId)
          Deprecated. since 6.3 use getByFormToken(String) instead.
 void valueBound(javax.servlet.http.HttpSessionBindingEvent httpSessionBindingEvent)
           
 void valueUnbound(javax.servlet.http.HttpSessionBindingEvent httpSessionBindingEvent)
          When this object is unbount from the HttpSession, it's responsible for cleanup.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TemporaryAttachmentsMonitor

public TemporaryAttachmentsMonitor()
Method Detail

add

public void add(TemporaryAttachment temporaryAttachment)
Adds temporary attachments to the interally maintained list of temporary attachements

Parameters:
temporaryAttachment - the attachment to add

getById

public TemporaryAttachment getById(Long id)
Returns matching temporary attachment by attachment id.

Parameters:
id - the id of the temporary attachment
Returns:
The temporary attachment or null if no matching attachment was found

getByIssueId

@Deprecated
public Collection<TemporaryAttachment> getByIssueId(Long issueId)
Deprecated. since 6.3 use getByFormToken(String) instead.

Returns all currently matching temporary attachments for a particular issue. If a null issue id is provided, this should be interpreted as a newly created issue that doesn't have an id yet.

Parameters:
issueId - The id of the issue to get attachmetns for. May be null
Returns:
a collection of temporary attachments for this issue sorted by creation date

getByFormToken

public Collection<TemporaryAttachment> getByFormToken(String formToken)
Returns all temporary attachments, which were bound to given form token. Form token may not be null.

Parameters:
formToken -
Returns:
a collection of temporary attachments for this form token sorted by creation date

clearEntriesForIssue

@Deprecated
public void clearEntriesForIssue(Long issueId)
Deprecated. since 6.3 use clearEntriesForFormToken(String) instead.

Removes all temporary attachments for the given issue. The issueId may be null to indicate a newly created issue, that doesn't have an id yet.

Parameters:
issueId - The id of the issue to remove entries for. May be null.

clearEntriesForFormToken

public void clearEntriesForFormToken(String formToken)
Removes all temporary attachments for the given formToken. Form token may not be null;

Parameters:
formToken - The formToken of the form to remove entries for. May not be null.

valueBound

public void valueBound(javax.servlet.http.HttpSessionBindingEvent httpSessionBindingEvent)
Specified by:
valueBound in interface javax.servlet.http.HttpSessionBindingListener

valueUnbound

public void valueUnbound(javax.servlet.http.HttpSessionBindingEvent httpSessionBindingEvent)
When this object is unbount from the HttpSession, it's responsible for cleanup. Any temporary attachments not converted to real attachments by now should be deleted to save disk space!

Specified by:
valueUnbound in interface javax.servlet.http.HttpSessionBindingListener
Parameters:
httpSessionBindingEvent -


Copyright © 2002-2014 Atlassian. All Rights Reserved.