ensureUpToDateContactListOrEmpty method
Implementation
Future<ContactList> ensureUpToDateContactListOrEmpty(EventSigner signer) async {
ContactList? contactList =
cacheManager.loadContactList(signer.getPublicKey());
int sometimeAgo = DateTime
.now()
.subtract(REFRESH_CONTACT_LIST_DURATION)
.millisecondsSinceEpoch ~/
1000;
bool refresh = contactList == null ||
contactList.loadedTimestamp == null ||
contactList.loadedTimestamp! < sometimeAgo;
if (refresh) {
contactList =
await loadContactList(signer.getPublicKey(), forceRefresh: true);
}
contactList ??= ContactList(pubKey: signer.getPublicKey(), contacts: []);
return contactList;
}