public abstract class NodeMigratorHelper
extends java.lang.Object
Addins that implement this interface need to register an instance of their implementation with the appropriate node migrator. Specific node migrators are looked up using the method: NodeMigrator.getNodeMigrator(java.lang.String)
. The key used to lookup a migrator is built by calling the NodeMigrator.getLookupKey(oracle.ide.model.Node)
passing the class name of the node type handled by the migrator sought.
A node migrator can also be located using the migrator name constant generally defined in a migrator class. By convention, that constant is named: MIGRATOR_NAME. For example, to get at the workspace migrator do:
NodeMigrator.getNodeMigrator( WorkspaceMigrator.MIGRATOR_NAME );
This call returns the workspace migrator if available, otherwise, it returns null
.
Constructor and Description |
---|
NodeMigratorHelper() |
Modifier and Type | Method and Description |
---|---|
protected void |
generateDefaults(MigrationInfo[] infos, TraversableContext context)
Creates the files with default values on disc.
|
protected java.lang.String |
getDefault(java.lang.String key)
Gets the default value if present.
|
java.lang.String |
getNodeMigratorHelperKey()
For a
NodeMigrator that tracks component version history, the migrator key is used for storing and retrieving the part of the version history related to the NodeMigratorHelper. |
java.lang.String |
getNodeMigratorHelperVersion()
The migrator version is used to determine whether a particular migrator needs to be applied based on any stored component version history.
|
java.util.List |
getPages(MigrationInfo[] infos, TraversableContext context)
Get the traversal pages to be displayed by the node migration wizard.
|
protected boolean |
isHeadlesMigration()
Tests whether the running migration is headless
|
abstract void |
migrate(MigrationInfo[] infos, TraversableContext context)
Method called to migrate the nodes recorded in the specified
MigrationInfo . |
protected void |
putDefault(java.lang.String key, java.lang.String value, java.lang.String comment)
Puts default value into the persistent storage to be used in latter runs
|
public abstract void migrate(MigrationInfo[] infos, TraversableContext context)
MigrationInfo
. Helpers should not save nodes during migration because this can cause problems for proceeding migrator helpers, possibly preventing them from performing migration.infos
- information about the nodes that may require migration.context
- contains addin specific migration data that is passed on to the helpers such that they can use that information when migrating their data.public java.util.List getPages(MigrationInfo[] infos, TraversableContext context)
context
object. This object is given to the page when the user navigates to it.infos
- information about the nodes that may require migration.context
- contains addin specific migration data that is passed on to the helpers such that they can use that information when migrating their data.public java.lang.String getNodeMigratorHelperKey()
NodeMigrator
that tracks component version history, the migrator key is used for storing and retrieving the part of the version history related to the NodeMigratorHelper. For example, in the case of a Project
migration, the migrator key is passed to the methods of ProjectVersion
. By default, the key is the fully qualified class name of the NodeMigratorHelper subclass. The key must not be null.public java.lang.String getNodeMigratorHelperVersion()
VersionNumber
class, so whenever possible, the version string should use a dot-delimited notation with only numbers, e.g. "10.1.3.0.1".
By default, this method returns the version string 11.1.1.1.0 You must override this method when your data format changes from one build to the next. Beginning with 11.1.1.1.0 any data format changes must be absolutly necessary and approved.
protected void generateDefaults(MigrationInfo[] infos, TraversableContext context) throws java.io.IOException
java.io.IOException
protected final void putDefault(java.lang.String key, java.lang.String value, java.lang.String comment)
key
- Key to find the valuevalue
- value of the defaultcomment
- Comment for the migration user to be able to understand and modify the valueprotected final java.lang.String getDefault(java.lang.String key)
protected final boolean isHeadlesMigration()