From 57dca67b3f6ed73f6c583704067676f81f8b0eb1 Mon Sep 17 00:00:00 2001 From: goapunk <goapunk@riseup.net> Date: Tue, 26 Jun 2018 18:09:07 +0200 Subject: [PATCH] Let client hooks decide if they handle a contact type --- .../main/java/org/briarproject/briar/blog/BlogManagerImpl.java | 2 ++ .../briar/introduction/IntroductionManagerImpl.java | 2 ++ .../privategroup/invitation/GroupInvitationManagerImpl.java | 3 +++ .../org/briarproject/briar/sharing/SharingManagerImpl.java | 3 +++ 4 files changed, 10 insertions(+) diff --git a/briar-core/src/main/java/org/briarproject/briar/blog/BlogManagerImpl.java b/briar-core/src/main/java/org/briarproject/briar/blog/BlogManagerImpl.java index 6a05b9a15..292a45db2 100644 --- a/briar-core/src/main/java/org/briarproject/briar/blog/BlogManagerImpl.java +++ b/briar-core/src/main/java/org/briarproject/briar/blog/BlogManagerImpl.java @@ -4,6 +4,7 @@ import org.briarproject.bramble.api.FormatException; import org.briarproject.bramble.api.client.ClientHelper; import org.briarproject.bramble.api.contact.Contact; import org.briarproject.bramble.api.contact.ContactManager.ContactHook; +import org.briarproject.bramble.api.contact.RepeaterContact; import org.briarproject.bramble.api.data.BdfDictionary; import org.briarproject.bramble.api.data.BdfEntry; import org.briarproject.bramble.api.data.BdfList; @@ -99,6 +100,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, @Override public void removingContact(Transaction txn, Contact c) throws DbException { + if (c instanceof RepeaterContact) return; Blog b = blogFactory.createBlog(c.getAuthor()); // TODO we might want to reconsider removing b, if otherwise shared if (db.containsGroup(txn, b.getId())) removeBlog(txn, b); diff --git a/briar-core/src/main/java/org/briarproject/briar/introduction/IntroductionManagerImpl.java b/briar-core/src/main/java/org/briarproject/briar/introduction/IntroductionManagerImpl.java index 64fc1b40d..0653b4503 100644 --- a/briar-core/src/main/java/org/briarproject/briar/introduction/IntroductionManagerImpl.java +++ b/briar-core/src/main/java/org/briarproject/briar/introduction/IntroductionManagerImpl.java @@ -7,6 +7,7 @@ import org.briarproject.bramble.api.contact.Contact; import org.briarproject.bramble.api.contact.ContactId; import org.briarproject.bramble.api.contact.ContactManager; import org.briarproject.bramble.api.contact.ContactManager.ContactHook; +import org.briarproject.bramble.api.contact.RepeaterContact; import org.briarproject.bramble.api.data.BdfDictionary; import org.briarproject.bramble.api.data.BdfList; import org.briarproject.bramble.api.data.MetadataParser; @@ -119,6 +120,7 @@ class IntroductionManagerImpl extends ConversationClientImpl @Override public void addingContact(Transaction txn, Contact c) throws DbException { + if (c instanceof RepeaterContact) return; // Create a group to share with the contact Group g = getContactGroup(c); db.addGroup(txn, g); diff --git a/briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImpl.java b/briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImpl.java index a4aef1eca..d6435387b 100644 --- a/briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImpl.java +++ b/briar-core/src/main/java/org/briarproject/briar/privategroup/invitation/GroupInvitationManagerImpl.java @@ -6,6 +6,7 @@ import org.briarproject.bramble.api.client.ContactGroupFactory; import org.briarproject.bramble.api.contact.Contact; import org.briarproject.bramble.api.contact.ContactId; import org.briarproject.bramble.api.contact.ContactManager.ContactHook; +import org.briarproject.bramble.api.contact.RepeaterContact; import org.briarproject.bramble.api.data.BdfDictionary; import org.briarproject.bramble.api.data.BdfList; import org.briarproject.bramble.api.data.MetadataParser; @@ -113,6 +114,7 @@ class GroupInvitationManagerImpl extends ConversationClientImpl @Override public void addingContact(Transaction txn, Contact c) throws DbException { + if (c instanceof RepeaterContact) return; // Create a group to share with the contact Group g = getContactGroup(c); db.addGroup(txn, g); @@ -137,6 +139,7 @@ class GroupInvitationManagerImpl extends ConversationClientImpl @Override public void removingContact(Transaction txn, Contact c) throws DbException { + if (c instanceof RepeaterContact) return; // Remove the contact group (all messages will be removed with it) db.removeGroup(txn, getContactGroup(c)); } diff --git a/briar-core/src/main/java/org/briarproject/briar/sharing/SharingManagerImpl.java b/briar-core/src/main/java/org/briarproject/briar/sharing/SharingManagerImpl.java index fc57a6daa..7c0cf5d27 100644 --- a/briar-core/src/main/java/org/briarproject/briar/sharing/SharingManagerImpl.java +++ b/briar-core/src/main/java/org/briarproject/briar/sharing/SharingManagerImpl.java @@ -6,6 +6,7 @@ import org.briarproject.bramble.api.client.ContactGroupFactory; import org.briarproject.bramble.api.contact.Contact; import org.briarproject.bramble.api.contact.ContactId; import org.briarproject.bramble.api.contact.ContactManager.ContactHook; +import org.briarproject.bramble.api.contact.RepeaterContact; import org.briarproject.bramble.api.data.BdfDictionary; import org.briarproject.bramble.api.data.BdfList; import org.briarproject.bramble.api.data.MetadataParser; @@ -104,6 +105,7 @@ abstract class SharingManagerImpl<S extends Shareable> @Override public void addingContact(Transaction txn, Contact c) throws DbException { + if (c instanceof RepeaterContact) return; // Create a group to share with the contact Group g = getContactGroup(c); db.addGroup(txn, g); @@ -122,6 +124,7 @@ abstract class SharingManagerImpl<S extends Shareable> @Override public void removingContact(Transaction txn, Contact c) throws DbException { + if (c instanceof RepeaterContact) return; // Remove the contact group (all messages will be removed with it) db.removeGroup(txn, getContactGroup(c)); } -- GitLab