From 7119771c6e010153c99ed845cd6967ca4f607287 Mon Sep 17 00:00:00 2001 From: ameba23 Date: Tue, 31 Aug 2021 12:40:24 +0200 Subject: [PATCH] Add revoke remote wipe method --- .../api/remotewipe/RemoteWipeManager.java | 2 ++ .../remotewipe/RemoteWipeManagerImpl.java | 20 +++++++++++-------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/briar-api/src/main/java/org/briarproject/briar/api/remotewipe/RemoteWipeManager.java b/briar-api/src/main/java/org/briarproject/briar/api/remotewipe/RemoteWipeManager.java index 3b8febd60..69002079b 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/remotewipe/RemoteWipeManager.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/remotewipe/RemoteWipeManager.java @@ -47,6 +47,8 @@ public interface RemoteWipeManager extends ConversationManager.ConversationClien boolean amWiper(Transaction txn, ContactId contactId); + boolean isWiper(Transaction txn, ContactId contactId); + void revoke(Transaction txn, ContactId contactId) throws DbException, FormatException; diff --git a/briar-core/src/main/java/org/briarproject/briar/remotewipe/RemoteWipeManagerImpl.java b/briar-core/src/main/java/org/briarproject/briar/remotewipe/RemoteWipeManagerImpl.java index 18f34f004..1b8a9b6a2 100644 --- a/briar-core/src/main/java/org/briarproject/briar/remotewipe/RemoteWipeManagerImpl.java +++ b/briar-core/src/main/java/org/briarproject/briar/remotewipe/RemoteWipeManagerImpl.java @@ -318,16 +318,20 @@ public class RemoteWipeManagerImpl extends ConversationClientImpl messageTracker.trackOutgoingMessage(txn, m); } - private boolean isWiper(Transaction txn, ContactId contactId) - throws DbException { - Author author = contactManager.getContact(txn, contactId).getAuthor(); - List currentWipers = getWipers(txn); - for (Author a : currentWipers) { - if (a.getId().equals(author.getId())) { - return true; + public boolean isWiper(Transaction txn, ContactId contactId) { + try { + Author author = + contactManager.getContact(txn, contactId).getAuthor(); + List currentWipers = getWipers(txn); + for (Author a : currentWipers) { + if (a.getId().equals(author.getId())) { + return true; + } } + return false; + } catch (DbException e) { + return false; } - return false; } public boolean amWiper(Transaction txn, ContactId contactId) {