refactor(persistence): moor to drift name change migration.

Signed-off-by: xsahil03x <[email protected]>
This commit is contained in:
Sahil Kumar
2021-10-25 14:01:42 +05:30
committed by xsahil03x
parent 281733cc3c
commit c58ddb1aef
74 changed files with 308 additions and 417 deletions
@@ -1,6 +1,6 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/channels.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
@@ -8,11 +8,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'channel_dao.g.dart';
/// The Data Access Object for operations in [Channels] table.
@UseDao(tables: [Channels, Users])
class ChannelDao extends DatabaseAccessor<MoorChatDatabase>
@DriftAccessor(tables: [Channels, Users])
class ChannelDao extends DatabaseAccessor<DriftChatDatabase>
with _$ChannelDaoMixin {
/// Creates a new channel dao instance
ChannelDao(MoorChatDatabase db) : super(db);
ChannelDao(DriftChatDatabase db) : super(db);
/// Get channel by cid
Future<ChannelModel?> getChannelByCid(String cid) async =>
@@ -6,7 +6,7 @@ part of 'channel_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$ChannelDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$ChannelDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$ChannelsTable get channels => attachedDatabase.channels;
$UsersTable get users => attachedDatabase.users;
}
@@ -1,8 +1,8 @@
import 'dart:convert';
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/channel_queries.dart';
import 'package:stream_chat_persistence/src/entity/channels.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
@@ -11,11 +11,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'channel_query_dao.g.dart';
/// The Data Access Object for operations in [ChannelQueries] table.
@UseDao(tables: [ChannelQueries, Channels, Users])
class ChannelQueryDao extends DatabaseAccessor<MoorChatDatabase>
@DriftAccessor(tables: [ChannelQueries, Channels, Users])
class ChannelQueryDao extends DatabaseAccessor<DriftChatDatabase>
with _$ChannelQueryDaoMixin {
/// Creates a new channel query dao instance
ChannelQueryDao(MoorChatDatabase db) : super(db);
ChannelQueryDao(DriftChatDatabase db) : super(db);
String _computeHash(Filter? filter) {
if (filter == null) {
@@ -6,7 +6,7 @@ part of 'channel_query_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$ChannelQueryDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$ChannelQueryDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$ChannelQueriesTable get channelQueries => attachedDatabase.channelQueries;
$ChannelsTable get channels => attachedDatabase.channels;
$UsersTable get users => attachedDatabase.users;
@@ -1,6 +1,6 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/connection_events.dart';
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
@@ -8,11 +8,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'connection_event_dao.g.dart';
/// The Data Access Object for operations in [ConnectionEvents] table.
@UseDao(tables: [ConnectionEvents])
class ConnectionEventDao extends DatabaseAccessor<MoorChatDatabase>
@DriftAccessor(tables: [ConnectionEvents])
class ConnectionEventDao extends DatabaseAccessor<DriftChatDatabase>
with _$ConnectionEventDaoMixin {
/// Creates a new connection event dao instance
ConnectionEventDao(MoorChatDatabase db) : super(db);
ConnectionEventDao(DriftChatDatabase db) : super(db);
/// Get the latest stored connection event
Future<Event?> get connectionEvent => select(connectionEvents)
@@ -6,7 +6,7 @@ part of 'connection_event_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$ConnectionEventDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$ConnectionEventDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$ConnectionEventsTable get connectionEvents =>
attachedDatabase.connectionEvents;
}
@@ -1,6 +1,6 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/members.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
@@ -10,11 +10,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'member_dao.g.dart';
/// The Data Access Object for operations in [Members] table.
@UseDao(tables: [Members, Users])
class MemberDao extends DatabaseAccessor<MoorChatDatabase>
@DriftAccessor(tables: [Members, Users])
class MemberDao extends DatabaseAccessor<DriftChatDatabase>
with _$MemberDaoMixin {
/// Creates a new member dao instance
MemberDao(MoorChatDatabase db) : super(db);
MemberDao(DriftChatDatabase db) : super(db);
/// Get all members where [Members.channelCid] matches [cid]
Future<List<Member>> getMembersByCid(String cid) async =>
@@ -6,7 +6,7 @@ part of 'member_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$MemberDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$MemberDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$MembersTable get members => attachedDatabase.members;
$UsersTable get users => attachedDatabase.users;
}
@@ -1,6 +1,6 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/messages.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
@@ -9,13 +9,13 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'message_dao.g.dart';
/// The Data Access Object for operations in [Messages] table.
@UseDao(tables: [Messages, Users])
class MessageDao extends DatabaseAccessor<MoorChatDatabase>
@DriftAccessor(tables: [Messages, Users])
class MessageDao extends DatabaseAccessor<DriftChatDatabase>
with _$MessageDaoMixin {
/// Creates a new message dao instance
MessageDao(this._db) : super(_db);
final MoorChatDatabase _db;
final DriftChatDatabase _db;
$UsersTable get _users => alias(users, 'users');
@@ -6,7 +6,7 @@ part of 'message_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$MessageDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$MessageDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$MessagesTable get messages => attachedDatabase.messages;
$UsersTable get users => attachedDatabase.users;
}
@@ -1,6 +1,6 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/pinned_messages.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
@@ -9,13 +9,13 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'pinned_message_dao.g.dart';
/// The Data Access Object for operations in [Messages] table.
@UseDao(tables: [PinnedMessages, Users])
class PinnedMessageDao extends DatabaseAccessor<MoorChatDatabase>
@DriftAccessor(tables: [PinnedMessages, Users])
class PinnedMessageDao extends DatabaseAccessor<DriftChatDatabase>
with _$PinnedMessageDaoMixin {
/// Creates a new message dao instance
PinnedMessageDao(this._db) : super(_db);
final MoorChatDatabase _db;
final DriftChatDatabase _db;
$UsersTable get _users => alias(users, 'users');
@@ -6,7 +6,7 @@ part of 'pinned_message_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$PinnedMessageDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$PinnedMessageDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$PinnedMessagesTable get pinnedMessages => attachedDatabase.pinnedMessages;
$UsersTable get users => attachedDatabase.users;
}
@@ -1,6 +1,6 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/pinned_message_reactions.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
@@ -8,11 +8,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'pinned_message_reaction_dao.g.dart';
/// The Data Access Object for operations in [PinnedMessageReactions] table.
@UseDao(tables: [PinnedMessageReactions, Users])
class PinnedMessageReactionDao extends DatabaseAccessor<MoorChatDatabase>
@DriftAccessor(tables: [PinnedMessageReactions, Users])
class PinnedMessageReactionDao extends DatabaseAccessor<DriftChatDatabase>
with _$PinnedMessageReactionDaoMixin {
/// Creates a new reaction dao instance
PinnedMessageReactionDao(MoorChatDatabase db) : super(db);
PinnedMessageReactionDao(DriftChatDatabase db) : super(db);
/// Returns all the reactions of a particular message by matching
/// [Reactions.messageId] with [messageId]
@@ -6,7 +6,7 @@ part of 'pinned_message_reaction_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$PinnedMessageReactionDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$PinnedMessageReactionDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$PinnedMessageReactionsTable get pinnedMessageReactions =>
attachedDatabase.pinnedMessageReactions;
$UsersTable get users => attachedDatabase.users;
@@ -1,6 +1,6 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/reactions.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
@@ -8,11 +8,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'reaction_dao.g.dart';
/// The Data Access Object for operations in [Reactions] table.
@UseDao(tables: [Reactions, Users])
class ReactionDao extends DatabaseAccessor<MoorChatDatabase>
@DriftAccessor(tables: [Reactions, Users])
class ReactionDao extends DatabaseAccessor<DriftChatDatabase>
with _$ReactionDaoMixin {
/// Creates a new reaction dao instance
ReactionDao(MoorChatDatabase db) : super(db);
ReactionDao(DriftChatDatabase db) : super(db);
/// Returns all the reactions of a particular message by matching
/// [Reactions.messageId] with [messageId]
@@ -6,7 +6,7 @@ part of 'reaction_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$ReactionDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$ReactionDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$ReactionsTable get reactions => attachedDatabase.reactions;
$UsersTable get users => attachedDatabase.users;
}
@@ -1,6 +1,6 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/reads.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
@@ -8,10 +8,10 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
part 'read_dao.g.dart';
/// The Data Access Object for operations in [Reads] table.
@UseDao(tables: [Reads, Users])
class ReadDao extends DatabaseAccessor<MoorChatDatabase> with _$ReadDaoMixin {
@DriftAccessor(tables: [Reads, Users])
class ReadDao extends DatabaseAccessor<DriftChatDatabase> with _$ReadDaoMixin {
/// Creates a new read dao instance
ReadDao(MoorChatDatabase db) : super(db);
ReadDao(DriftChatDatabase db) : super(db);
/// Get all reads where [Reads.channelCid] matches [cid]
Future<List<Read>> getReadsByCid(String cid) async => (select(reads).join([
@@ -6,7 +6,7 @@ part of 'read_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$ReadDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$ReadDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$ReadsTable get reads => attachedDatabase.reads;
$UsersTable get users => attachedDatabase.users;
}
@@ -1,16 +1,16 @@
import 'package:moor/moor.dart';
import 'package:drift/drift.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
import 'package:stream_chat_persistence/src/entity/users.dart';
import 'package:stream_chat_persistence/src/mapper/user_mapper.dart';
part 'user_dao.g.dart';
/// The Data Access Object for operations in [Users] table.
@UseDao(tables: [Users])
class UserDao extends DatabaseAccessor<MoorChatDatabase> with _$UserDaoMixin {
@DriftAccessor(tables: [Users])
class UserDao extends DatabaseAccessor<DriftChatDatabase> with _$UserDaoMixin {
/// Creates a new user dao instance
UserDao(MoorChatDatabase db) : super(db);
UserDao(DriftChatDatabase db) : super(db);
/// Updates the users data with the new [userList] data
Future<void> updateUsers(List<User> userList) => batch(
@@ -6,6 +6,6 @@ part of 'user_dao.dart';
// DaoGenerator
// **************************************************************************
mixin _$UserDaoMixin on DatabaseAccessor<MoorChatDatabase> {
mixin _$UserDaoMixin on DatabaseAccessor<DriftChatDatabase> {
$UsersTable get users => attachedDatabase.users;
}