Skip to content

Commit

Permalink
Support null-safety
Browse files Browse the repository at this point in the history
  • Loading branch information
mvrsn authored and esarbanis committed Apr 14, 2021
1 parent 0fb80ae commit 36a4011
Show file tree
Hide file tree
Showing 8 changed files with 225 additions and 82 deletions.
14 changes: 7 additions & 7 deletions example/example.dart
Expand Up @@ -33,27 +33,27 @@ final config = MigrationConfig(
initializationScript: initialScript, migrationScripts: migrations);

class DatabaseRepository {
static Database _database;
String path;
static Database? _database;
String? path;

Future<Database> get database async {
if (_database != null) {
return _database;
return _database!;
}

_database = await _open();
return _database;
return _database!;
}

Future<Database> _open() async {
final databasesPath = await getDatabasesPath();
final databasesPath = await (getDatabasesPath() as FutureOr<String>);
final path = join(databasesPath, 'test.db');

return await openDatabaseWithMigration(path, config);
}

Future<Map> findById(int id) async {
final db = await database;
Future<Map?> findById(int id) async {
final db = await (database as FutureOr<Database>);
List<Map> maps = await db.query('_task',
columns: ['id', 'description'], where: 'id = ?', whereArgs: [id]);
if (maps.length > 0) {
Expand Down
6 changes: 1 addition & 5 deletions lib/src/migration_config.dart
Expand Up @@ -13,9 +13,5 @@ class MigrationConfig {
final List<String> initializationScript;
final List<String> migrationScripts;

MigrationConfig({this.initializationScript, this.migrationScripts})
: assert(initializationScript != null,
'The initializationScript cannot be null.'),
assert(
migrationScripts != null, 'The migrationScripts cannot be null.');
MigrationConfig({required this.initializationScript, required this.migrationScripts});
}
4 changes: 2 additions & 2 deletions lib/src/migrator.dart
Expand Up @@ -14,7 +14,7 @@ class Migrator {

Migrator(this.config);

Future<void> executeInitialization(Database db, int version) async {
Future<void> executeInitialization(DatabaseExecutor db, int version) async {
for (String script in config.initializationScript) {
await db.execute(script);
}
Expand All @@ -25,7 +25,7 @@ class Migrator {
}

Future<void> executeMigration(
Database db, int oldVersion, int newVersion) async {
DatabaseExecutor db, int oldVersion, int newVersion) async {
assert(oldVersion < newVersion,
'The newVersion($newVersion) should always be greater than the oldVersion($oldVersion).');
assert(config.migrationScripts.length == newVersion - 1,
Expand Down

0 comments on commit 36a4011

Please sign in to comment.