readVersionSql method
Reads the stored migration SQL for running migrations.
Does not include the project definition. Returns null if the version
cannot be found.
Implementation
@override
Future<MigrationVersionSql?> readVersionSql(String version) async {
final versionDirectory = await _resolveVersionDirectory(version);
if (versionDirectory == null) {
return null;
}
final definition = await _readRequiredProtocolFile<DatabaseDefinition>(
MigrationConstants.databaseDefinitionJSONPath(_projectDirectory, version),
);
return MigrationVersionSql(
version: version,
moduleName: definition.moduleName,
definitionSql: await _readRequiredFile(
MigrationConstants.databaseDefinitionSQLPath(
_projectDirectory,
version,
),
),
migrationSql: await _readRequiredFile(
MigrationConstants.databaseMigrationSQLPath(
_projectDirectory,
version,
),
),
);
}