com.atlassian.confluence.upgrade.upgradetask
Class ReferencedUsersUserMappingUpgradeTask
java.lang.Object
com.atlassian.confluence.upgrade.AbstractUpgradeTask
com.atlassian.confluence.upgrade.upgradetask.AbstractUserMappingUpgradeTask
com.atlassian.confluence.upgrade.upgradetask.ReferencedUsersUserMappingUpgradeTask
- All Implemented Interfaces:
- BackupSupport, DatabaseUpgradeTask, UpgradeTask, UpgradeTaskInfo, org.springframework.beans.factory.BeanNameAware
public class ReferencedUsersUserMappingUpgradeTask
- extends AbstractUserMappingUpgradeTask
- implements DatabaseUpgradeTask
Upgrade task to ensure that for all the user names in Confluence a ConfluenceUser object exist.
Various username related columns across all content table are considered. This is consistent with
Confluence's behaviour of allowing content to be owned/created/modified/whatever by non-existent
users.
Note that various "post schema" upgrade tasks assume this task has already run and make the assumption
that all content referenced users are populated in the user_mapping table (ConfluenceUser). e.g.
UserIndexingUpgradeTask
.
Fields inherited from interface com.atlassian.confluence.upgrade.UpgradeTask |
log |
Constructor Summary |
ReferencedUsersUserMappingUpgradeTask(ConfluenceUserDao confluenceUserDao,
net.sf.hibernate.SessionFactory sessionFactory,
org.springframework.transaction.PlatformTransactionManager transactionManager,
BatchOperationManager batchOperationManager,
java.util.Map<java.lang.String,java.util.Set<java.lang.String>> userNameReferences,
com.atlassian.config.db.HibernateConfig hibernateConfig)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ReferencedUsersUserMappingUpgradeTask
public ReferencedUsersUserMappingUpgradeTask(ConfluenceUserDao confluenceUserDao,
net.sf.hibernate.SessionFactory sessionFactory,
org.springframework.transaction.PlatformTransactionManager transactionManager,
BatchOperationManager batchOperationManager,
java.util.Map<java.lang.String,java.util.Set<java.lang.String>> userNameReferences,
com.atlassian.config.db.HibernateConfig hibernateConfig)
getUsernamesMissingMapping
protected java.util.Set<java.lang.String> getUsernamesMissingMapping()
- Specified by:
getUsernamesMissingMapping
in class AbstractUserMappingUpgradeTask
runOnSpaceImport
public boolean runOnSpaceImport()
- Description copied from interface:
BackupSupport
- Returns true if an older Space can't be imported in a new instance without running this task. For example:
- A task updating macro names in the BodyContent table would be blocking.
- Tasks which updates data related to the space would be blocking.
- A task upgrading the user table wouldn't be blocking.
- Adding a mandatory column on space-related content breaks space import
Note that tasks don't run on space import yet, so we just reject the import in this case.
- Specified by:
runOnSpaceImport
in interface BackupSupport
breaksBackwardCompatibility
public boolean breaksBackwardCompatibility()
- Description copied from interface:
BackupSupport
- Returns true if a new export can't be imported in an older instance.
Breaking compatibility means a snapshot of the new version will not work
at all with the previous version. For example:
- A destructive operation (Some data is replaced by another) breaks backwards compatibility
- Adding a optional column does NOT break backwards compatibility
- Data is copied to another column doesn't breaks backwards compatibility
- A build number incrementation doesn't breaks backwards compatibility
The best way to test is whether a newer export can be imported (with fully working features)
in an older instance.
- Specified by:
breaksBackwardCompatibility
in interface BackupSupport
getBuildNumber
public java.lang.String getBuildNumber()
- Specified by:
getBuildNumber
in interface UpgradeTaskInfo
- Overrides:
getBuildNumber
in class AbstractUpgradeTask
- Returns:
- The build number that this upgrade is applicable to
getShortDescription
public java.lang.String getShortDescription()
- Description copied from interface:
UpgradeTaskInfo
- A short (<50 chars) description of the upgrade action
- Specified by:
getShortDescription
in interface UpgradeTaskInfo
- Overrides:
getShortDescription
in class AbstractUpgradeTask
Copyright © 2003-2014 Atlassian. All Rights Reserved.