Class CorrectAttachmentCreatorUpgradeTask

  extended by com.atlassian.confluence.upgrade.AbstractUpgradeTask
      extended by com.atlassian.confluence.upgrade.upgradetask.CorrectAttachmentCreatorUpgradeTask
All Implemented Interfaces:

public class CorrectAttachmentCreatorUpgradeTask
extends AbstractUpgradeTask

In older versions of Confluence, when a new version of an attachment was created, only the last modifier field was set. That is, the author of the new version was not acknowledged in the creator field of the new attachment. The problem with this is that the last modifier field is then overloaded with too much information (both creation and last modifier). As such, if an attachment has been modified after upload, the original creator would be lost. The same problem exists for attachment creation and modification dates.

This upgrade task aims to address the problem of overloading only. It will copy across the the value of:

There will be the odd case where if a comment was added to an attachment, the commenter, being the last modifier, will be assigned as the creator of the attachment by this upgrade task. But there is nothing we can do about this, since we have lost the creator.

Field Summary
Fields inherited from interface com.atlassian.confluence.upgrade.UpgradeTask
Constructor Summary
Method Summary
 void doUpgrade()
          Perform the upgrade.
 String getBuildNumber()
 String getShortDescription()
          A short (<50 chars) description of the upgrade action
 void setSessionFactory(net.sf.hibernate.SessionFactory sessionFactory)
Methods inherited from class com.atlassian.confluence.upgrade.AbstractUpgradeTask
addAllErrors, addError, addError, getConstraint, getErrors, setBuildNumber, validate
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public CorrectAttachmentCreatorUpgradeTask()
Method Detail


public String getBuildNumber()
Specified by:
getBuildNumber in interface UpgradeTask
getBuildNumber in class AbstractUpgradeTask
The build number that this upgrade is applicable to


public String getShortDescription()
Description copied from interface: UpgradeTask
A short (<50 chars) description of the upgrade action

Specified by:
getShortDescription in interface UpgradeTask
getShortDescription in class AbstractUpgradeTask


public void doUpgrade()
               throws Exception
Description copied from interface: UpgradeTask
Perform the upgrade.



public void setSessionFactory(net.sf.hibernate.SessionFactory sessionFactory)

Copyright © 2003-2012 Atlassian. All Rights Reserved.