getAllStream method
Get All With Stream in Box<T>
Implementation
Stream<T> getAllStream({int? parentId}) async* {
final res = await _indexedDB.db.readAll();
for (var record in res) {
// json ပဲရယူမယ်
if (record.status == RecordStatus.delete ||
record.type != RecordType.json) {
continue;
}
final jsr = record as JsonRecord;
if (jsr.adapterTypeId != _adapter.getUniqueFieldId) continue;
// filter parent Id
if (parentId != null && jsr.parentId != parentId) continue;
// read json data
final raf = await _indexedDB.dbFile.open();
final data = await jsr.getJsonData(raf);
await raf.close();
if (data == null) continue;
final value = _adapter.fromMap(_adapter.decodeData(data));
//delay
// await Future.delayed(Duration(seconds: 1));
yield value;
}
}