RoomDatabase.MigrationContainer


public final class RoomDatabase.MigrationContainer


A container to hold migrations. It also allows querying its contents to find migrations between two versions.

Summary

Public constructors

Public methods

final void

Adds the given migrations to the list of available migrations.

final boolean
contains(int startVersion, int endVersion)

Indicates if the given migration is contained within the MigrationContainer based on its start-end versions.

final @NonNull Map<@NonNull Integer, @NonNull Map<@NonNull Integer, @NonNull Migration>>

Returns the map of available migrations where the key is the start version of the migration, and the value is a map of (end version -> Migration).

Public constructors

MigrationContainer

Added in 2.0.0
public MigrationContainer()

Public methods

addMigrations

Added in 2.4.0
public final void addMigrations(@NonNull List<@NonNull Migration> migrations)

Adds the given migrations to the list of available migrations. If 2 migrations have the same start-end versions, the latter migration overrides the previous one.

Parameters
@NonNull List<@NonNull Migration> migrations

List of available migrations.

contains

Added in 2.5.0
public final boolean contains(int startVersion, int endVersion)

Indicates if the given migration is contained within the MigrationContainer based on its start-end versions.

Parameters
int startVersion

Start version of the migration.

int endVersion

End version of the migration

Returns
boolean

True if it contains a migration with the same start-end version, false otherwise.

getMigrations

Added in 2.4.0
public final @NonNull Map<@NonNull Integer, @NonNull Map<@NonNull Integer, @NonNull Migration>> getMigrations()

Returns the map of available migrations where the key is the start version of the migration, and the value is a map of (end version -> Migration).

Returns
@NonNull Map<@NonNull Integer, @NonNull Map<@NonNull Integer, @NonNull Migration>>

Map of migrations keyed by the start version