// GENERATED CODE - DO NOT MODIFY BY HAND part of 'history.dart'; // ************************************************************************** // FloorGenerator // ************************************************************************** abstract class $MessageHistoryDbBuilderContract { /// Adds migrations to the builder. $MessageHistoryDbBuilderContract addMigrations(List migrations); /// Adds a database [Callback] to the builder. $MessageHistoryDbBuilderContract addCallback(Callback callback); /// Creates the database and initializes it. Future build(); } // ignore: avoid_classes_with_only_static_members class $FloorMessageHistoryDb { /// Creates a database builder for a persistent database. /// Once a database is built, you should keep a reference to it and re-use it. static $MessageHistoryDbBuilderContract databaseBuilder(String name) => _$MessageHistoryDbBuilder(name); /// Creates a database builder for an in memory database. /// Information stored in an in memory database disappears when the process is killed. /// Once a database is built, you should keep a reference to it and re-use it. static $MessageHistoryDbBuilderContract inMemoryDatabaseBuilder() => _$MessageHistoryDbBuilder(null); } class _$MessageHistoryDbBuilder implements $MessageHistoryDbBuilderContract { _$MessageHistoryDbBuilder(this.name); final String? name; final List _migrations = []; Callback? _callback; @override $MessageHistoryDbBuilderContract addMigrations(List migrations) { _migrations.addAll(migrations); return this; } @override $MessageHistoryDbBuilderContract addCallback(Callback callback) { _callback = callback; return this; } @override Future build() async { final path = name != null ? await sqfliteDatabaseFactory.getDatabasePath(name!) : ':memory:'; final database = _$MessageHistoryDb(); database.database = await database.open( path, _migrations, _callback, ); return database; } } class _$MessageHistoryDb extends MessageHistoryDb { _$MessageHistoryDb([StreamController? listener]) { changeListener = listener ?? StreamController.broadcast(); } LocalMessageDao? _localMessagesInstance; Future open( String path, List migrations, [ Callback? callback, ]) async { final databaseOptions = sqflite.OpenDatabaseOptions( version: 1, onConfigure: (database) async { await database.execute('PRAGMA foreign_keys = ON'); await callback?.onConfigure?.call(database); }, onOpen: (database) async { await callback?.onOpen?.call(database); }, onUpgrade: (database, startVersion, endVersion) async { await MigrationAdapter.runMigrations( database, startVersion, endVersion, migrations); await callback?.onUpgrade?.call(database, startVersion, endVersion); }, onCreate: (database, version) async { await database.execute( 'CREATE TABLE IF NOT EXISTS `LocalMessage` (`id` INTEGER NOT NULL, `data` TEXT NOT NULL, `channelId` INTEGER NOT NULL, PRIMARY KEY (`id`))'); await callback?.onCreate?.call(database, version); }, ); return sqfliteDatabaseFactory.openDatabase(path, options: databaseOptions); } @override LocalMessageDao get localMessages { return _localMessagesInstance ??= _$LocalMessageDao(database, changeListener); } } class _$LocalMessageDao extends LocalMessageDao { _$LocalMessageDao( this.database, this.changeListener, ) : _queryAdapter = QueryAdapter(database), _localMessageInsertionAdapter = InsertionAdapter( database, 'LocalMessage', (LocalMessage item) => { 'id': item.id, 'data': _remoteMessageConverter.encode(item.data), 'channelId': item.channelId }); final sqflite.DatabaseExecutor database; final StreamController changeListener; final QueryAdapter _queryAdapter; final InsertionAdapter _localMessageInsertionAdapter; @override Future> findAllByChannel(int channelId) async { return _queryAdapter.queryList( 'SELECT * FROM LocalMessage WHERE channelId = ?1', mapper: (Map row) => LocalMessage( row['id'] as int, _remoteMessageConverter.decode(row['data'] as String), row['channelId'] as int), arguments: [channelId]); } @override Future wipeLocalMessages() async { await _queryAdapter.queryNoReturn('DELETE * FROM LocalMessage'); } @override Future insert(LocalMessage m) async { await _localMessageInsertionAdapter.insert(m, OnConflictStrategy.replace); } @override Future insertBulk(List m) async { await _localMessageInsertionAdapter.insertList( m, OnConflictStrategy.replace); } } // ignore_for_file: unused_element final _remoteMessageConverter = RemoteMessageConverter();