drift_sounds_database 0.1.0
drift_sounds_database: ^0.1.0 copied to clipboard
The database layer for `drift_sounds`. This package is only the database layer and can be used for anything.
example/drift_sounds_database_example.dart
// ignore_for_file: avoid_print
import 'dart:io';
import 'package:drift/native.dart';
import 'package:drift_sounds_database/drift_sounds_database.dart';
import 'package:path/path.dart' as path;
Future<void> main() async {
/// Load the database.
final database = DriftSoundsDatabase.fromLoader(NativeDatabase.memory);
print('Loaded in-memory database.');
final directory = Directory.current;
for (final file in directory.listSync(recursive: true).whereType<File>()) {
final name = path.relative(file.path, from: directory.path);
final row = await database.managers.soundDatas.createReturning(
(final o) => o(bytes: file.readAsBytesSync()),
);
print('Loaded $name as #${row.id}.');
}
print('Closing database.');
await database.close();
print('Done.');
}