36 lines
1.6 KiB
Dart
36 lines
1.6 KiB
Dart
// lib/remote/collection_source_remote_ext.dart
|
|
import 'package:aves/model/source/collection_source.dart';
|
|
import 'package:aves/services/common/services.dart';
|
|
import 'package:flutter/foundation.dart';
|
|
|
|
extension CollectionSourceRemoteExt on CollectionSource {
|
|
/// Warm-start: carica dal DB le entry LOCALI (origin=0) e le aggiunge alla Source
|
|
Future<void> appendLocalEntriesFromDb() async {
|
|
final locals = await localMediaDb.loadEntries(origin: 0);
|
|
debugPrint('[local-append] candidati=${locals.length}');
|
|
|
|
final visibili = locals.where((e) => !e.trashed && e.isDisplayable).toSet();
|
|
debugPrint('[local-append] visibili=${visibili.length}');
|
|
|
|
final prima = allEntries.where((e) => e.origin == 0 && !e.trashed).length;
|
|
addEntries(visibili);
|
|
final dopo = allEntries.where((e) => e.origin == 0 && !e.trashed).length;
|
|
|
|
debugPrint('[local-append] appese=${dopo - prima} (prima=$prima -> dopo=$dopo)');
|
|
}
|
|
|
|
/// Warm-start: carica dal DB tutte le entry REMOTE (origin=1) non cestinate
|
|
Future<void> appendRemoteEntriesFromDb() async {
|
|
final remoti = await localMediaDb.loadEntries(origin: 1);
|
|
debugPrint('[remote-append] candidati=${remoti.length}');
|
|
|
|
final visibili = remoti.where((e) => !e.trashed).toSet();
|
|
debugPrint('[remote-append] visibili=${visibili.length}');
|
|
|
|
final prima = allEntries.where((e) => e.origin == 1 && !e.trashed).length;
|
|
addEntries(visibili);
|
|
final dopo = allEntries.where((e) => e.origin == 1 && !e.trashed).length;
|
|
|
|
debugPrint('[remote-append] appese=${dopo - prima} (prima=$prima -> dopo=$dopo)');
|
|
}
|
|
}
|