From 411ace13aac4d088ee2bee4f2879d15e34d362b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20K=C3=BCrten?= Date: Mon, 24 Jul 2023 16:09:24 +0200 Subject: [PATCH] Add some logging to ClientVersioningManagerImpl --- .../ClientVersioningManagerImpl.java | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/bramble-core/src/main/java/org/briarproject/bramble/versioning/ClientVersioningManagerImpl.java b/bramble-core/src/main/java/org/briarproject/bramble/versioning/ClientVersioningManagerImpl.java index 1dc50702e..ba556b755 100644 --- a/bramble-core/src/main/java/org/briarproject/bramble/versioning/ClientVersioningManagerImpl.java +++ b/bramble-core/src/main/java/org/briarproject/bramble/versioning/ClientVersioningManagerImpl.java @@ -30,6 +30,9 @@ import org.briarproject.bramble.api.versioning.ClientVersioningManager; import org.briarproject.bramble.api.versioning.event.ClientVersionUpdatedEvent; import org.briarproject.nullsafety.NotNullByDefault; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneOffset; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -128,12 +131,55 @@ class ClientVersioningManagerImpl implements ClientVersioningManager, @Override public void onDatabaseOpened(Transaction txn) throws DbException { + System.out.println("onDatabaseOpened " + localGroup.getId()); + for (Contact c : db.getContacts(txn)) { + try { + System.out.println( + "find latest updates for " + c.getId().getInt()); + LatestUpdates latestUpdates = findLatestUpdates(txn, c.getId()); + if (latestUpdates == null) { + System.out.println("none found"); + } else { + if (latestUpdates.local != null) { + System.out.printf("local: %s; %d%n", + latestUpdates.local.messageId, + latestUpdates.local.updateVersion); + Update update = + loadUpdate(txn, latestUpdates.local.messageId); + printUpdate(update); + } + if (latestUpdates.remote != null) { + System.out.printf("remote: %s; %d%n", + latestUpdates.remote.messageId, + latestUpdates.remote.updateVersion); + Update update = + loadUpdate(txn, latestUpdates.remote.messageId); + printUpdate(update); + } + } + } catch (FormatException e) { + throw new RuntimeException(e); + } + } if (db.containsGroup(txn, localGroup.getId())) return; db.addGroup(txn, localGroup); // Set things up for any pre-existing contacts for (Contact c : db.getContacts(txn)) addingContact(txn, c); } + private void printUpdate(Update update) { + System.out.printf("update version: %d%n", + update.updateVersion); + for (ClientState state : update.states) { + System.out.printf("id: %s, major: %d, minor: %d, active: %b, %n", + state.clientVersion.getClientId().getString(), + state.clientVersion.getClientMajorVersion() + .getMajorVersion(), + state.clientVersion.getMinorVersion(), + state.active); + } + } + @Override public void startService() throws ServiceException { List versions = new ArrayList<>(clients);