mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-01-15 09:28:41 +00:00
added db migrations
This commit is contained in:
parent
6c630c78b5
commit
7157d286a0
5 changed files with 625 additions and 17 deletions
1
drift_schemas/twonly_database/drift_schema_v11.json
Normal file
1
drift_schemas/twonly_database/drift_schema_v11.json
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -53,7 +53,7 @@ class TwonlyDatabase extends _$TwonlyDatabase {
|
||||||
TwonlyDatabase.forTesting(DatabaseConnection super.connection);
|
TwonlyDatabase.forTesting(DatabaseConnection super.connection);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get schemaVersion => 10;
|
int get schemaVersion => 11;
|
||||||
|
|
||||||
static QueryExecutor _openConnection() {
|
static QueryExecutor _openConnection() {
|
||||||
return driftDatabase(
|
return driftDatabase(
|
||||||
|
|
@ -118,6 +118,9 @@ class TwonlyDatabase extends _$TwonlyDatabase {
|
||||||
m.createTable(signalContactSignedPreKeys);
|
m.createTable(signalContactSignedPreKeys);
|
||||||
m.addColumn(schema.contacts, schema.contacts.deleted);
|
m.addColumn(schema.contacts, schema.contacts.deleted);
|
||||||
},
|
},
|
||||||
|
from10To11: (m, schema) async {
|
||||||
|
m.createTable(messageRetransmissions);
|
||||||
|
},
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2192,6 +2192,279 @@ i1.GeneratedColumn<i2.Uint8List> _column_61(String aliasedName) =>
|
||||||
i1.GeneratedColumn<i2.Uint8List>(
|
i1.GeneratedColumn<i2.Uint8List>(
|
||||||
'signed_pre_key_signature', aliasedName, false,
|
'signed_pre_key_signature', aliasedName, false,
|
||||||
type: i1.DriftSqlType.blob);
|
type: i1.DriftSqlType.blob);
|
||||||
|
|
||||||
|
final class Schema11 extends i0.VersionedSchema {
|
||||||
|
Schema11({required super.database}) : super(version: 11);
|
||||||
|
@override
|
||||||
|
late final List<i1.DatabaseSchemaEntity> entities = [
|
||||||
|
contacts,
|
||||||
|
messages,
|
||||||
|
mediaUploads,
|
||||||
|
mediaDownloads,
|
||||||
|
signalIdentityKeyStores,
|
||||||
|
signalPreKeyStores,
|
||||||
|
signalSenderKeyStores,
|
||||||
|
signalSessionStores,
|
||||||
|
signalContactPreKeys,
|
||||||
|
signalContactSignedPreKeys,
|
||||||
|
messageRetransmissions,
|
||||||
|
];
|
||||||
|
late final Shape13 contacts = Shape13(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'contacts',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [
|
||||||
|
'PRIMARY KEY(user_id)',
|
||||||
|
],
|
||||||
|
columns: [
|
||||||
|
_column_0,
|
||||||
|
_column_1,
|
||||||
|
_column_2,
|
||||||
|
_column_3,
|
||||||
|
_column_4,
|
||||||
|
_column_5,
|
||||||
|
_column_6,
|
||||||
|
_column_7,
|
||||||
|
_column_8,
|
||||||
|
_column_9,
|
||||||
|
_column_39,
|
||||||
|
_column_53,
|
||||||
|
_column_57,
|
||||||
|
_column_54,
|
||||||
|
_column_40,
|
||||||
|
_column_10,
|
||||||
|
_column_11,
|
||||||
|
_column_12,
|
||||||
|
_column_13,
|
||||||
|
_column_14,
|
||||||
|
_column_55,
|
||||||
|
_column_15,
|
||||||
|
_column_16,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape10 messages = Shape10(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'messages',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [],
|
||||||
|
columns: [
|
||||||
|
_column_17,
|
||||||
|
_column_18,
|
||||||
|
_column_19,
|
||||||
|
_column_48,
|
||||||
|
_column_49,
|
||||||
|
_column_20,
|
||||||
|
_column_21,
|
||||||
|
_column_22,
|
||||||
|
_column_52,
|
||||||
|
_column_23,
|
||||||
|
_column_24,
|
||||||
|
_column_25,
|
||||||
|
_column_26,
|
||||||
|
_column_27,
|
||||||
|
_column_28,
|
||||||
|
_column_29,
|
||||||
|
_column_30,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape7 mediaUploads = Shape7(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'media_uploads',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [],
|
||||||
|
columns: [
|
||||||
|
_column_41,
|
||||||
|
_column_42,
|
||||||
|
_column_56,
|
||||||
|
_column_44,
|
||||||
|
_column_45,
|
||||||
|
_column_46,
|
||||||
|
_column_47,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape9 mediaDownloads = Shape9(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'media_downloads',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [],
|
||||||
|
columns: [
|
||||||
|
_column_50,
|
||||||
|
_column_51,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape2 signalIdentityKeyStores = Shape2(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'signal_identity_key_stores',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [
|
||||||
|
'PRIMARY KEY(device_id, name)',
|
||||||
|
],
|
||||||
|
columns: [
|
||||||
|
_column_31,
|
||||||
|
_column_32,
|
||||||
|
_column_33,
|
||||||
|
_column_10,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape3 signalPreKeyStores = Shape3(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'signal_pre_key_stores',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [
|
||||||
|
'PRIMARY KEY(pre_key_id)',
|
||||||
|
],
|
||||||
|
columns: [
|
||||||
|
_column_34,
|
||||||
|
_column_35,
|
||||||
|
_column_10,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape4 signalSenderKeyStores = Shape4(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'signal_sender_key_stores',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [
|
||||||
|
'PRIMARY KEY(sender_key_name)',
|
||||||
|
],
|
||||||
|
columns: [
|
||||||
|
_column_36,
|
||||||
|
_column_37,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape5 signalSessionStores = Shape5(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'signal_session_stores',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [
|
||||||
|
'PRIMARY KEY(device_id, name)',
|
||||||
|
],
|
||||||
|
columns: [
|
||||||
|
_column_31,
|
||||||
|
_column_32,
|
||||||
|
_column_38,
|
||||||
|
_column_10,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape14 signalContactPreKeys = Shape14(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'signal_contact_pre_keys',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [
|
||||||
|
'PRIMARY KEY(contact_id, pre_key_id)',
|
||||||
|
],
|
||||||
|
columns: [
|
||||||
|
_column_58,
|
||||||
|
_column_34,
|
||||||
|
_column_35,
|
||||||
|
_column_10,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape15 signalContactSignedPreKeys = Shape15(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'signal_contact_signed_pre_keys',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [
|
||||||
|
'PRIMARY KEY(contact_id)',
|
||||||
|
],
|
||||||
|
columns: [
|
||||||
|
_column_58,
|
||||||
|
_column_59,
|
||||||
|
_column_60,
|
||||||
|
_column_61,
|
||||||
|
_column_10,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
late final Shape16 messageRetransmissions = Shape16(
|
||||||
|
source: i0.VersionedTable(
|
||||||
|
entityName: 'message_retransmissions',
|
||||||
|
withoutRowId: false,
|
||||||
|
isStrict: false,
|
||||||
|
tableConstraints: [],
|
||||||
|
columns: [
|
||||||
|
_column_62,
|
||||||
|
_column_63,
|
||||||
|
_column_64,
|
||||||
|
_column_65,
|
||||||
|
_column_66,
|
||||||
|
_column_67,
|
||||||
|
],
|
||||||
|
attachedDatabase: database,
|
||||||
|
),
|
||||||
|
alias: null);
|
||||||
|
}
|
||||||
|
|
||||||
|
class Shape16 extends i0.VersionedTable {
|
||||||
|
Shape16({required super.source, required super.alias}) : super.aliased();
|
||||||
|
i1.GeneratedColumn<int> get retransmissionId =>
|
||||||
|
columnsByName['retransmission_id']! as i1.GeneratedColumn<int>;
|
||||||
|
i1.GeneratedColumn<int> get contactId =>
|
||||||
|
columnsByName['contact_id']! as i1.GeneratedColumn<int>;
|
||||||
|
i1.GeneratedColumn<int> get messageId =>
|
||||||
|
columnsByName['message_id']! as i1.GeneratedColumn<int>;
|
||||||
|
i1.GeneratedColumn<i2.Uint8List> get plaintextContent =>
|
||||||
|
columnsByName['plaintext_content']! as i1.GeneratedColumn<i2.Uint8List>;
|
||||||
|
i1.GeneratedColumn<i2.Uint8List> get pushData =>
|
||||||
|
columnsByName['push_data']! as i1.GeneratedColumn<i2.Uint8List>;
|
||||||
|
i1.GeneratedColumn<DateTime> get acknowledgeByServerAt =>
|
||||||
|
columnsByName['acknowledge_by_server_at']!
|
||||||
|
as i1.GeneratedColumn<DateTime>;
|
||||||
|
}
|
||||||
|
|
||||||
|
i1.GeneratedColumn<int> _column_62(String aliasedName) =>
|
||||||
|
i1.GeneratedColumn<int>('retransmission_id', aliasedName, false,
|
||||||
|
hasAutoIncrement: true,
|
||||||
|
type: i1.DriftSqlType.int,
|
||||||
|
defaultConstraints:
|
||||||
|
i1.GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT'));
|
||||||
|
i1.GeneratedColumn<int> _column_63(String aliasedName) =>
|
||||||
|
i1.GeneratedColumn<int>('contact_id', aliasedName, false,
|
||||||
|
type: i1.DriftSqlType.int,
|
||||||
|
defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
|
||||||
|
'REFERENCES contacts (user_id) ON DELETE CASCADE'));
|
||||||
|
i1.GeneratedColumn<int> _column_64(String aliasedName) =>
|
||||||
|
i1.GeneratedColumn<int>('message_id', aliasedName, true,
|
||||||
|
type: i1.DriftSqlType.int,
|
||||||
|
defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
|
||||||
|
'REFERENCES messages (message_id) ON DELETE CASCADE'));
|
||||||
|
i1.GeneratedColumn<i2.Uint8List> _column_65(String aliasedName) =>
|
||||||
|
i1.GeneratedColumn<i2.Uint8List>('plaintext_content', aliasedName, false,
|
||||||
|
type: i1.DriftSqlType.blob);
|
||||||
|
i1.GeneratedColumn<i2.Uint8List> _column_66(String aliasedName) =>
|
||||||
|
i1.GeneratedColumn<i2.Uint8List>('push_data', aliasedName, true,
|
||||||
|
type: i1.DriftSqlType.blob);
|
||||||
|
i1.GeneratedColumn<DateTime> _column_67(String aliasedName) =>
|
||||||
|
i1.GeneratedColumn<DateTime>('acknowledge_by_server_at', aliasedName, true,
|
||||||
|
type: i1.DriftSqlType.dateTime);
|
||||||
i0.MigrationStepWithVersion migrationSteps({
|
i0.MigrationStepWithVersion migrationSteps({
|
||||||
required Future<void> Function(i1.Migrator m, Schema2 schema) from1To2,
|
required Future<void> Function(i1.Migrator m, Schema2 schema) from1To2,
|
||||||
required Future<void> Function(i1.Migrator m, Schema3 schema) from2To3,
|
required Future<void> Function(i1.Migrator m, Schema3 schema) from2To3,
|
||||||
|
|
@ -2202,6 +2475,7 @@ i0.MigrationStepWithVersion migrationSteps({
|
||||||
required Future<void> Function(i1.Migrator m, Schema8 schema) from7To8,
|
required Future<void> Function(i1.Migrator m, Schema8 schema) from7To8,
|
||||||
required Future<void> Function(i1.Migrator m, Schema9 schema) from8To9,
|
required Future<void> Function(i1.Migrator m, Schema9 schema) from8To9,
|
||||||
required Future<void> Function(i1.Migrator m, Schema10 schema) from9To10,
|
required Future<void> Function(i1.Migrator m, Schema10 schema) from9To10,
|
||||||
|
required Future<void> Function(i1.Migrator m, Schema11 schema) from10To11,
|
||||||
}) {
|
}) {
|
||||||
return (currentVersion, database) async {
|
return (currentVersion, database) async {
|
||||||
switch (currentVersion) {
|
switch (currentVersion) {
|
||||||
|
|
@ -2250,6 +2524,11 @@ i0.MigrationStepWithVersion migrationSteps({
|
||||||
final migrator = i1.Migrator(database, schema);
|
final migrator = i1.Migrator(database, schema);
|
||||||
await from9To10(migrator, schema);
|
await from9To10(migrator, schema);
|
||||||
return 10;
|
return 10;
|
||||||
|
case 10:
|
||||||
|
final schema = Schema11(database: database);
|
||||||
|
final migrator = i1.Migrator(database, schema);
|
||||||
|
await from10To11(migrator, schema);
|
||||||
|
return 11;
|
||||||
default:
|
default:
|
||||||
throw ArgumentError.value('Unknown migration from $currentVersion');
|
throw ArgumentError.value('Unknown migration from $currentVersion');
|
||||||
}
|
}
|
||||||
|
|
@ -2266,6 +2545,7 @@ i1.OnUpgrade stepByStep({
|
||||||
required Future<void> Function(i1.Migrator m, Schema8 schema) from7To8,
|
required Future<void> Function(i1.Migrator m, Schema8 schema) from7To8,
|
||||||
required Future<void> Function(i1.Migrator m, Schema9 schema) from8To9,
|
required Future<void> Function(i1.Migrator m, Schema9 schema) from8To9,
|
||||||
required Future<void> Function(i1.Migrator m, Schema10 schema) from9To10,
|
required Future<void> Function(i1.Migrator m, Schema10 schema) from9To10,
|
||||||
|
required Future<void> Function(i1.Migrator m, Schema11 schema) from10To11,
|
||||||
}) =>
|
}) =>
|
||||||
i0.VersionedSchema.stepByStepHelper(
|
i0.VersionedSchema.stepByStepHelper(
|
||||||
step: migrationSteps(
|
step: migrationSteps(
|
||||||
|
|
@ -2278,4 +2558,5 @@ i1.OnUpgrade stepByStep({
|
||||||
from7To8: from7To8,
|
from7To8: from7To8,
|
||||||
from8To9: from8To9,
|
from8To9: from8To9,
|
||||||
from9To10: from9To10,
|
from9To10: from9To10,
|
||||||
|
from10To11: from10To11,
|
||||||
));
|
));
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ import 'schema_v7.dart' as v7;
|
||||||
import 'schema_v8.dart' as v8;
|
import 'schema_v8.dart' as v8;
|
||||||
import 'schema_v9.dart' as v9;
|
import 'schema_v9.dart' as v9;
|
||||||
import 'schema_v10.dart' as v10;
|
import 'schema_v10.dart' as v10;
|
||||||
|
import 'schema_v11.dart' as v11;
|
||||||
|
|
||||||
class GeneratedHelper implements SchemaInstantiationHelper {
|
class GeneratedHelper implements SchemaInstantiationHelper {
|
||||||
@override
|
@override
|
||||||
|
|
@ -38,10 +39,12 @@ class GeneratedHelper implements SchemaInstantiationHelper {
|
||||||
return v9.DatabaseAtV9(db);
|
return v9.DatabaseAtV9(db);
|
||||||
case 10:
|
case 10:
|
||||||
return v10.DatabaseAtV10(db);
|
return v10.DatabaseAtV10(db);
|
||||||
|
case 11:
|
||||||
|
return v11.DatabaseAtV11(db);
|
||||||
default:
|
default:
|
||||||
throw MissingSchemaException(version, versions);
|
throw MissingSchemaException(version, versions);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static const versions = const [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
static const versions = const [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -916,8 +916,8 @@ class Messages extends Table with TableInfo<Messages, MessagesData> {
|
||||||
'contact_id', aliasedName, false,
|
'contact_id', aliasedName, false,
|
||||||
type: DriftSqlType.int,
|
type: DriftSqlType.int,
|
||||||
requiredDuringInsert: true,
|
requiredDuringInsert: true,
|
||||||
defaultConstraints: GeneratedColumn.constraintIsAlways(
|
defaultConstraints:
|
||||||
'REFERENCES contacts (user_id) ON DELETE CASCADE'));
|
GeneratedColumn.constraintIsAlways('REFERENCES contacts (user_id)'));
|
||||||
late final GeneratedColumn<int> messageId = GeneratedColumn<int>(
|
late final GeneratedColumn<int> messageId = GeneratedColumn<int>(
|
||||||
'message_id', aliasedName, false,
|
'message_id', aliasedName, false,
|
||||||
hasAutoIncrement: true,
|
hasAutoIncrement: true,
|
||||||
|
|
@ -1955,10 +1955,7 @@ class MediaDownloads extends Table
|
||||||
MediaDownloads(this.attachedDatabase, [this._alias]);
|
MediaDownloads(this.attachedDatabase, [this._alias]);
|
||||||
late final GeneratedColumn<int> messageId = GeneratedColumn<int>(
|
late final GeneratedColumn<int> messageId = GeneratedColumn<int>(
|
||||||
'message_id', aliasedName, false,
|
'message_id', aliasedName, false,
|
||||||
type: DriftSqlType.int,
|
type: DriftSqlType.int, requiredDuringInsert: true);
|
||||||
requiredDuringInsert: true,
|
|
||||||
defaultConstraints: GeneratedColumn.constraintIsAlways(
|
|
||||||
'REFERENCES messages (message_id) ON DELETE CASCADE'));
|
|
||||||
late final GeneratedColumn<String> downloadToken = GeneratedColumn<String>(
|
late final GeneratedColumn<String> downloadToken = GeneratedColumn<String>(
|
||||||
'download_token', aliasedName, false,
|
'download_token', aliasedName, false,
|
||||||
type: DriftSqlType.string, requiredDuringInsert: true);
|
type: DriftSqlType.string, requiredDuringInsert: true);
|
||||||
|
|
@ -2975,10 +2972,7 @@ class SignalContactPreKeys extends Table
|
||||||
SignalContactPreKeys(this.attachedDatabase, [this._alias]);
|
SignalContactPreKeys(this.attachedDatabase, [this._alias]);
|
||||||
late final GeneratedColumn<int> contactId = GeneratedColumn<int>(
|
late final GeneratedColumn<int> contactId = GeneratedColumn<int>(
|
||||||
'contact_id', aliasedName, false,
|
'contact_id', aliasedName, false,
|
||||||
type: DriftSqlType.int,
|
type: DriftSqlType.int, requiredDuringInsert: true);
|
||||||
requiredDuringInsert: true,
|
|
||||||
defaultConstraints: GeneratedColumn.constraintIsAlways(
|
|
||||||
'REFERENCES contacts (user_id) ON DELETE CASCADE'));
|
|
||||||
late final GeneratedColumn<int> preKeyId = GeneratedColumn<int>(
|
late final GeneratedColumn<int> preKeyId = GeneratedColumn<int>(
|
||||||
'pre_key_id', aliasedName, false,
|
'pre_key_id', aliasedName, false,
|
||||||
type: DriftSqlType.int, requiredDuringInsert: true);
|
type: DriftSqlType.int, requiredDuringInsert: true);
|
||||||
|
|
@ -3215,10 +3209,7 @@ class SignalContactSignedPreKeys extends Table
|
||||||
SignalContactSignedPreKeys(this.attachedDatabase, [this._alias]);
|
SignalContactSignedPreKeys(this.attachedDatabase, [this._alias]);
|
||||||
late final GeneratedColumn<int> contactId = GeneratedColumn<int>(
|
late final GeneratedColumn<int> contactId = GeneratedColumn<int>(
|
||||||
'contact_id', aliasedName, false,
|
'contact_id', aliasedName, false,
|
||||||
type: DriftSqlType.int,
|
type: DriftSqlType.int, requiredDuringInsert: false);
|
||||||
requiredDuringInsert: false,
|
|
||||||
defaultConstraints: GeneratedColumn.constraintIsAlways(
|
|
||||||
'REFERENCES contacts (user_id) ON DELETE CASCADE'));
|
|
||||||
late final GeneratedColumn<int> signedPreKeyId = GeneratedColumn<int>(
|
late final GeneratedColumn<int> signedPreKeyId = GeneratedColumn<int>(
|
||||||
'signed_pre_key_id', aliasedName, false,
|
'signed_pre_key_id', aliasedName, false,
|
||||||
type: DriftSqlType.int, requiredDuringInsert: true);
|
type: DriftSqlType.int, requiredDuringInsert: true);
|
||||||
|
|
@ -3487,6 +3478,332 @@ class SignalContactSignedPreKeysCompanion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class MessageRetransmissions extends Table
|
||||||
|
with TableInfo<MessageRetransmissions, MessageRetransmissionsData> {
|
||||||
|
@override
|
||||||
|
final GeneratedDatabase attachedDatabase;
|
||||||
|
final String? _alias;
|
||||||
|
MessageRetransmissions(this.attachedDatabase, [this._alias]);
|
||||||
|
late final GeneratedColumn<int> retransmissionId = GeneratedColumn<int>(
|
||||||
|
'retransmission_id', aliasedName, false,
|
||||||
|
hasAutoIncrement: true,
|
||||||
|
type: DriftSqlType.int,
|
||||||
|
requiredDuringInsert: false,
|
||||||
|
defaultConstraints:
|
||||||
|
GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT'));
|
||||||
|
late final GeneratedColumn<int> contactId = GeneratedColumn<int>(
|
||||||
|
'contact_id', aliasedName, false,
|
||||||
|
type: DriftSqlType.int,
|
||||||
|
requiredDuringInsert: true,
|
||||||
|
defaultConstraints: GeneratedColumn.constraintIsAlways(
|
||||||
|
'REFERENCES contacts (user_id) ON DELETE CASCADE'));
|
||||||
|
late final GeneratedColumn<int> messageId = GeneratedColumn<int>(
|
||||||
|
'message_id', aliasedName, true,
|
||||||
|
type: DriftSqlType.int,
|
||||||
|
requiredDuringInsert: false,
|
||||||
|
defaultConstraints: GeneratedColumn.constraintIsAlways(
|
||||||
|
'REFERENCES messages (message_id) ON DELETE CASCADE'));
|
||||||
|
late final GeneratedColumn<Uint8List> plaintextContent =
|
||||||
|
GeneratedColumn<Uint8List>('plaintext_content', aliasedName, false,
|
||||||
|
type: DriftSqlType.blob, requiredDuringInsert: true);
|
||||||
|
late final GeneratedColumn<Uint8List> pushData = GeneratedColumn<Uint8List>(
|
||||||
|
'push_data', aliasedName, true,
|
||||||
|
type: DriftSqlType.blob, requiredDuringInsert: false);
|
||||||
|
late final GeneratedColumn<DateTime> acknowledgeByServerAt =
|
||||||
|
GeneratedColumn<DateTime>('acknowledge_by_server_at', aliasedName, true,
|
||||||
|
type: DriftSqlType.dateTime, requiredDuringInsert: false);
|
||||||
|
@override
|
||||||
|
List<GeneratedColumn> get $columns => [
|
||||||
|
retransmissionId,
|
||||||
|
contactId,
|
||||||
|
messageId,
|
||||||
|
plaintextContent,
|
||||||
|
pushData,
|
||||||
|
acknowledgeByServerAt
|
||||||
|
];
|
||||||
|
@override
|
||||||
|
String get aliasedName => _alias ?? actualTableName;
|
||||||
|
@override
|
||||||
|
String get actualTableName => $name;
|
||||||
|
static const String $name = 'message_retransmissions';
|
||||||
|
@override
|
||||||
|
Set<GeneratedColumn> get $primaryKey => {retransmissionId};
|
||||||
|
@override
|
||||||
|
MessageRetransmissionsData map(Map<String, dynamic> data,
|
||||||
|
{String? tablePrefix}) {
|
||||||
|
final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : '';
|
||||||
|
return MessageRetransmissionsData(
|
||||||
|
retransmissionId: attachedDatabase.typeMapping
|
||||||
|
.read(DriftSqlType.int, data['${effectivePrefix}retransmission_id'])!,
|
||||||
|
contactId: attachedDatabase.typeMapping
|
||||||
|
.read(DriftSqlType.int, data['${effectivePrefix}contact_id'])!,
|
||||||
|
messageId: attachedDatabase.typeMapping
|
||||||
|
.read(DriftSqlType.int, data['${effectivePrefix}message_id']),
|
||||||
|
plaintextContent: attachedDatabase.typeMapping.read(
|
||||||
|
DriftSqlType.blob, data['${effectivePrefix}plaintext_content'])!,
|
||||||
|
pushData: attachedDatabase.typeMapping
|
||||||
|
.read(DriftSqlType.blob, data['${effectivePrefix}push_data']),
|
||||||
|
acknowledgeByServerAt: attachedDatabase.typeMapping.read(
|
||||||
|
DriftSqlType.dateTime,
|
||||||
|
data['${effectivePrefix}acknowledge_by_server_at']),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
MessageRetransmissions createAlias(String alias) {
|
||||||
|
return MessageRetransmissions(attachedDatabase, alias);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class MessageRetransmissionsData extends DataClass
|
||||||
|
implements Insertable<MessageRetransmissionsData> {
|
||||||
|
final int retransmissionId;
|
||||||
|
final int contactId;
|
||||||
|
final int? messageId;
|
||||||
|
final Uint8List plaintextContent;
|
||||||
|
final Uint8List? pushData;
|
||||||
|
final DateTime? acknowledgeByServerAt;
|
||||||
|
const MessageRetransmissionsData(
|
||||||
|
{required this.retransmissionId,
|
||||||
|
required this.contactId,
|
||||||
|
this.messageId,
|
||||||
|
required this.plaintextContent,
|
||||||
|
this.pushData,
|
||||||
|
this.acknowledgeByServerAt});
|
||||||
|
@override
|
||||||
|
Map<String, Expression> toColumns(bool nullToAbsent) {
|
||||||
|
final map = <String, Expression>{};
|
||||||
|
map['retransmission_id'] = Variable<int>(retransmissionId);
|
||||||
|
map['contact_id'] = Variable<int>(contactId);
|
||||||
|
if (!nullToAbsent || messageId != null) {
|
||||||
|
map['message_id'] = Variable<int>(messageId);
|
||||||
|
}
|
||||||
|
map['plaintext_content'] = Variable<Uint8List>(plaintextContent);
|
||||||
|
if (!nullToAbsent || pushData != null) {
|
||||||
|
map['push_data'] = Variable<Uint8List>(pushData);
|
||||||
|
}
|
||||||
|
if (!nullToAbsent || acknowledgeByServerAt != null) {
|
||||||
|
map['acknowledge_by_server_at'] =
|
||||||
|
Variable<DateTime>(acknowledgeByServerAt);
|
||||||
|
}
|
||||||
|
return map;
|
||||||
|
}
|
||||||
|
|
||||||
|
MessageRetransmissionsCompanion toCompanion(bool nullToAbsent) {
|
||||||
|
return MessageRetransmissionsCompanion(
|
||||||
|
retransmissionId: Value(retransmissionId),
|
||||||
|
contactId: Value(contactId),
|
||||||
|
messageId: messageId == null && nullToAbsent
|
||||||
|
? const Value.absent()
|
||||||
|
: Value(messageId),
|
||||||
|
plaintextContent: Value(plaintextContent),
|
||||||
|
pushData: pushData == null && nullToAbsent
|
||||||
|
? const Value.absent()
|
||||||
|
: Value(pushData),
|
||||||
|
acknowledgeByServerAt: acknowledgeByServerAt == null && nullToAbsent
|
||||||
|
? const Value.absent()
|
||||||
|
: Value(acknowledgeByServerAt),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
factory MessageRetransmissionsData.fromJson(Map<String, dynamic> json,
|
||||||
|
{ValueSerializer? serializer}) {
|
||||||
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
|
return MessageRetransmissionsData(
|
||||||
|
retransmissionId: serializer.fromJson<int>(json['retransmissionId']),
|
||||||
|
contactId: serializer.fromJson<int>(json['contactId']),
|
||||||
|
messageId: serializer.fromJson<int?>(json['messageId']),
|
||||||
|
plaintextContent:
|
||||||
|
serializer.fromJson<Uint8List>(json['plaintextContent']),
|
||||||
|
pushData: serializer.fromJson<Uint8List?>(json['pushData']),
|
||||||
|
acknowledgeByServerAt:
|
||||||
|
serializer.fromJson<DateTime?>(json['acknowledgeByServerAt']),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
@override
|
||||||
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
|
return <String, dynamic>{
|
||||||
|
'retransmissionId': serializer.toJson<int>(retransmissionId),
|
||||||
|
'contactId': serializer.toJson<int>(contactId),
|
||||||
|
'messageId': serializer.toJson<int?>(messageId),
|
||||||
|
'plaintextContent': serializer.toJson<Uint8List>(plaintextContent),
|
||||||
|
'pushData': serializer.toJson<Uint8List?>(pushData),
|
||||||
|
'acknowledgeByServerAt':
|
||||||
|
serializer.toJson<DateTime?>(acknowledgeByServerAt),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
MessageRetransmissionsData copyWith(
|
||||||
|
{int? retransmissionId,
|
||||||
|
int? contactId,
|
||||||
|
Value<int?> messageId = const Value.absent(),
|
||||||
|
Uint8List? plaintextContent,
|
||||||
|
Value<Uint8List?> pushData = const Value.absent(),
|
||||||
|
Value<DateTime?> acknowledgeByServerAt = const Value.absent()}) =>
|
||||||
|
MessageRetransmissionsData(
|
||||||
|
retransmissionId: retransmissionId ?? this.retransmissionId,
|
||||||
|
contactId: contactId ?? this.contactId,
|
||||||
|
messageId: messageId.present ? messageId.value : this.messageId,
|
||||||
|
plaintextContent: plaintextContent ?? this.plaintextContent,
|
||||||
|
pushData: pushData.present ? pushData.value : this.pushData,
|
||||||
|
acknowledgeByServerAt: acknowledgeByServerAt.present
|
||||||
|
? acknowledgeByServerAt.value
|
||||||
|
: this.acknowledgeByServerAt,
|
||||||
|
);
|
||||||
|
MessageRetransmissionsData copyWithCompanion(
|
||||||
|
MessageRetransmissionsCompanion data) {
|
||||||
|
return MessageRetransmissionsData(
|
||||||
|
retransmissionId: data.retransmissionId.present
|
||||||
|
? data.retransmissionId.value
|
||||||
|
: this.retransmissionId,
|
||||||
|
contactId: data.contactId.present ? data.contactId.value : this.contactId,
|
||||||
|
messageId: data.messageId.present ? data.messageId.value : this.messageId,
|
||||||
|
plaintextContent: data.plaintextContent.present
|
||||||
|
? data.plaintextContent.value
|
||||||
|
: this.plaintextContent,
|
||||||
|
pushData: data.pushData.present ? data.pushData.value : this.pushData,
|
||||||
|
acknowledgeByServerAt: data.acknowledgeByServerAt.present
|
||||||
|
? data.acknowledgeByServerAt.value
|
||||||
|
: this.acknowledgeByServerAt,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return (StringBuffer('MessageRetransmissionsData(')
|
||||||
|
..write('retransmissionId: $retransmissionId, ')
|
||||||
|
..write('contactId: $contactId, ')
|
||||||
|
..write('messageId: $messageId, ')
|
||||||
|
..write('plaintextContent: $plaintextContent, ')
|
||||||
|
..write('pushData: $pushData, ')
|
||||||
|
..write('acknowledgeByServerAt: $acknowledgeByServerAt')
|
||||||
|
..write(')'))
|
||||||
|
.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(
|
||||||
|
retransmissionId,
|
||||||
|
contactId,
|
||||||
|
messageId,
|
||||||
|
$driftBlobEquality.hash(plaintextContent),
|
||||||
|
$driftBlobEquality.hash(pushData),
|
||||||
|
acknowledgeByServerAt);
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) =>
|
||||||
|
identical(this, other) ||
|
||||||
|
(other is MessageRetransmissionsData &&
|
||||||
|
other.retransmissionId == this.retransmissionId &&
|
||||||
|
other.contactId == this.contactId &&
|
||||||
|
other.messageId == this.messageId &&
|
||||||
|
$driftBlobEquality.equals(
|
||||||
|
other.plaintextContent, this.plaintextContent) &&
|
||||||
|
$driftBlobEquality.equals(other.pushData, this.pushData) &&
|
||||||
|
other.acknowledgeByServerAt == this.acknowledgeByServerAt);
|
||||||
|
}
|
||||||
|
|
||||||
|
class MessageRetransmissionsCompanion
|
||||||
|
extends UpdateCompanion<MessageRetransmissionsData> {
|
||||||
|
final Value<int> retransmissionId;
|
||||||
|
final Value<int> contactId;
|
||||||
|
final Value<int?> messageId;
|
||||||
|
final Value<Uint8List> plaintextContent;
|
||||||
|
final Value<Uint8List?> pushData;
|
||||||
|
final Value<DateTime?> acknowledgeByServerAt;
|
||||||
|
const MessageRetransmissionsCompanion({
|
||||||
|
this.retransmissionId = const Value.absent(),
|
||||||
|
this.contactId = const Value.absent(),
|
||||||
|
this.messageId = const Value.absent(),
|
||||||
|
this.plaintextContent = const Value.absent(),
|
||||||
|
this.pushData = const Value.absent(),
|
||||||
|
this.acknowledgeByServerAt = const Value.absent(),
|
||||||
|
});
|
||||||
|
MessageRetransmissionsCompanion.insert({
|
||||||
|
this.retransmissionId = const Value.absent(),
|
||||||
|
required int contactId,
|
||||||
|
this.messageId = const Value.absent(),
|
||||||
|
required Uint8List plaintextContent,
|
||||||
|
this.pushData = const Value.absent(),
|
||||||
|
this.acknowledgeByServerAt = const Value.absent(),
|
||||||
|
}) : contactId = Value(contactId),
|
||||||
|
plaintextContent = Value(plaintextContent);
|
||||||
|
static Insertable<MessageRetransmissionsData> custom({
|
||||||
|
Expression<int>? retransmissionId,
|
||||||
|
Expression<int>? contactId,
|
||||||
|
Expression<int>? messageId,
|
||||||
|
Expression<Uint8List>? plaintextContent,
|
||||||
|
Expression<Uint8List>? pushData,
|
||||||
|
Expression<DateTime>? acknowledgeByServerAt,
|
||||||
|
}) {
|
||||||
|
return RawValuesInsertable({
|
||||||
|
if (retransmissionId != null) 'retransmission_id': retransmissionId,
|
||||||
|
if (contactId != null) 'contact_id': contactId,
|
||||||
|
if (messageId != null) 'message_id': messageId,
|
||||||
|
if (plaintextContent != null) 'plaintext_content': plaintextContent,
|
||||||
|
if (pushData != null) 'push_data': pushData,
|
||||||
|
if (acknowledgeByServerAt != null)
|
||||||
|
'acknowledge_by_server_at': acknowledgeByServerAt,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
MessageRetransmissionsCompanion copyWith(
|
||||||
|
{Value<int>? retransmissionId,
|
||||||
|
Value<int>? contactId,
|
||||||
|
Value<int?>? messageId,
|
||||||
|
Value<Uint8List>? plaintextContent,
|
||||||
|
Value<Uint8List?>? pushData,
|
||||||
|
Value<DateTime?>? acknowledgeByServerAt}) {
|
||||||
|
return MessageRetransmissionsCompanion(
|
||||||
|
retransmissionId: retransmissionId ?? this.retransmissionId,
|
||||||
|
contactId: contactId ?? this.contactId,
|
||||||
|
messageId: messageId ?? this.messageId,
|
||||||
|
plaintextContent: plaintextContent ?? this.plaintextContent,
|
||||||
|
pushData: pushData ?? this.pushData,
|
||||||
|
acknowledgeByServerAt:
|
||||||
|
acknowledgeByServerAt ?? this.acknowledgeByServerAt,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Map<String, Expression> toColumns(bool nullToAbsent) {
|
||||||
|
final map = <String, Expression>{};
|
||||||
|
if (retransmissionId.present) {
|
||||||
|
map['retransmission_id'] = Variable<int>(retransmissionId.value);
|
||||||
|
}
|
||||||
|
if (contactId.present) {
|
||||||
|
map['contact_id'] = Variable<int>(contactId.value);
|
||||||
|
}
|
||||||
|
if (messageId.present) {
|
||||||
|
map['message_id'] = Variable<int>(messageId.value);
|
||||||
|
}
|
||||||
|
if (plaintextContent.present) {
|
||||||
|
map['plaintext_content'] = Variable<Uint8List>(plaintextContent.value);
|
||||||
|
}
|
||||||
|
if (pushData.present) {
|
||||||
|
map['push_data'] = Variable<Uint8List>(pushData.value);
|
||||||
|
}
|
||||||
|
if (acknowledgeByServerAt.present) {
|
||||||
|
map['acknowledge_by_server_at'] =
|
||||||
|
Variable<DateTime>(acknowledgeByServerAt.value);
|
||||||
|
}
|
||||||
|
return map;
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return (StringBuffer('MessageRetransmissionsCompanion(')
|
||||||
|
..write('retransmissionId: $retransmissionId, ')
|
||||||
|
..write('contactId: $contactId, ')
|
||||||
|
..write('messageId: $messageId, ')
|
||||||
|
..write('plaintextContent: $plaintextContent, ')
|
||||||
|
..write('pushData: $pushData, ')
|
||||||
|
..write('acknowledgeByServerAt: $acknowledgeByServerAt')
|
||||||
|
..write(')'))
|
||||||
|
.toString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class DatabaseAtV11 extends GeneratedDatabase {
|
class DatabaseAtV11 extends GeneratedDatabase {
|
||||||
DatabaseAtV11(QueryExecutor e) : super(e);
|
DatabaseAtV11(QueryExecutor e) : super(e);
|
||||||
late final Contacts contacts = Contacts(this);
|
late final Contacts contacts = Contacts(this);
|
||||||
|
|
@ -3504,6 +3821,8 @@ class DatabaseAtV11 extends GeneratedDatabase {
|
||||||
SignalContactPreKeys(this);
|
SignalContactPreKeys(this);
|
||||||
late final SignalContactSignedPreKeys signalContactSignedPreKeys =
|
late final SignalContactSignedPreKeys signalContactSignedPreKeys =
|
||||||
SignalContactSignedPreKeys(this);
|
SignalContactSignedPreKeys(this);
|
||||||
|
late final MessageRetransmissions messageRetransmissions =
|
||||||
|
MessageRetransmissions(this);
|
||||||
@override
|
@override
|
||||||
Iterable<TableInfo<Table, Object?>> get allTables =>
|
Iterable<TableInfo<Table, Object?>> get allTables =>
|
||||||
allSchemaEntities.whereType<TableInfo<Table, Object?>>();
|
allSchemaEntities.whereType<TableInfo<Table, Object?>>();
|
||||||
|
|
@ -3518,7 +3837,8 @@ class DatabaseAtV11 extends GeneratedDatabase {
|
||||||
signalSenderKeyStores,
|
signalSenderKeyStores,
|
||||||
signalSessionStores,
|
signalSessionStores,
|
||||||
signalContactPreKeys,
|
signalContactPreKeys,
|
||||||
signalContactSignedPreKeys
|
signalContactSignedPreKeys,
|
||||||
|
messageRetransmissions
|
||||||
];
|
];
|
||||||
@override
|
@override
|
||||||
int get schemaVersion => 11;
|
int get schemaVersion => 11;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue