updateLatestCapsule method

List<ModeratorEntry>? updateLatestCapsule(
  1. Uint8List bin,
  2. bool stripModerateSeen
)

Implementation

List<ModeratorEntry>? updateLatestCapsule(
    Uint8List bin, bool stripModerateSeen) {
  //throw latest shit in the entrySet
  //TODO check for exact previous
  //error codes return less data
  //409,502
  if (bin.lengthInBytes < 28) return [];
  print('updateLatestCapsule len');
  print(bin.lengthInBytes);
  dataIn += bin.lengthInBytes;
  ModeratorCapsule mc;
  try {
    mc = ModeratorCapsule.fromBinary(bin);
  } catch (e) {
    //moderator caps outta sync
    return null;
  }
  //if (mc.isDEADBEEF) return null;
  if (mc == null) return null;
  if (mc.isEmpty) return null;

  if (mc.katamari.isNotEmpty) {
    _latestCapsule = mc;

    _disk?.commitKatamari(mc.katamari);
  }
  if (mc.threadEntries.isNotEmpty) {
    final t = insertToLocalEntrySet(mc, stripModerateSeen);
    if (t.isNotEmpty) {
      _dirty = true;
    }
    return t;
  }
  return null;
}