Class ReflectiveVersionMigrationScript<T,​E extends VersionAgnosticMigrationEmbeddedStorageManager<?,​?>>

  • All Implemented Interfaces:
    VersionAgnosticMigrationScript<T,​E>

    public abstract class ReflectiveVersionMigrationScript<T,​E extends VersionAgnosticMigrationEmbeddedStorageManager<?,​?>>
    extends java.lang.Object
    implements VersionAgnosticMigrationScript<T,​E>
    Script which creates the target version of the script through the class name.

    Class name has to be in the scheme:
    vM_Classname
    vM_m_Classname
    vM_m_m_Classname
    Where v is short for version and is a constant (just a char),
    M is a integer for the major version,
    m is a integer for the minor version
    Classname is a custom String that the user can choose.
    This scheme can basically be extended infinetly. For example: v1_1_2_2_MyUpdateScript

    Therefore the character _ can only be used as a seperator of versions and may not be used for other purposes.

    If the class name has the wrong format, an Error is thrown.

    Author:
    Johannes Rabauer