From cb8f89db53b76b104932a1f8f936c8d19334302a Mon Sep 17 00:00:00 2001 From: akwizgran <michael@briarproject.org> Date: Tue, 27 Mar 2018 15:56:35 +0100 Subject: [PATCH] Add method for adding a contact without transport keys. --- .../bramble/api/contact/ContactManager.java | 12 ++++++++++-- .../bramble/contact/ContactManagerImpl.java | 10 ++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/bramble-api/src/main/java/org/briarproject/bramble/api/contact/ContactManager.java b/bramble-api/src/main/java/org/briarproject/bramble/api/contact/ContactManager.java index e6be9a4d2f..dd3db05038 100644 --- a/bramble-api/src/main/java/org/briarproject/bramble/api/contact/ContactManager.java +++ b/bramble-api/src/main/java/org/briarproject/bramble/api/contact/ContactManager.java @@ -23,13 +23,21 @@ public interface ContactManager { void registerRemoveContactHook(RemoveContactHook hook); /** - * Stores a contact within the given transaction associated with the given - * local and remote pseudonyms, and returns an ID for the contact. + * Stores a contact associated with the given local and remote pseudonyms, + * derives and stores transport keys for each transport, and returns an ID + * for the contact. */ ContactId addContact(Transaction txn, Author remote, AuthorId local, SecretKey master, long timestamp, boolean alice, boolean verified, boolean active) throws DbException; + /** + * Stores a contact associated with the given local and remote pseudonyms + * and returns an ID for the contact. + */ + ContactId addContact(Transaction txn, Author remote, AuthorId local, + boolean verified, boolean active) throws DbException; + /** * Stores a contact associated with the given local and remote pseudonyms, * and returns an ID for the contact. diff --git a/bramble-core/src/main/java/org/briarproject/bramble/contact/ContactManagerImpl.java b/bramble-core/src/main/java/org/briarproject/bramble/contact/ContactManagerImpl.java index afac362ced..025a6d38d0 100644 --- a/bramble-core/src/main/java/org/briarproject/bramble/contact/ContactManagerImpl.java +++ b/bramble-core/src/main/java/org/briarproject/bramble/contact/ContactManagerImpl.java @@ -60,6 +60,16 @@ class ContactManagerImpl implements ContactManager { return c; } + @Override + public ContactId addContact(Transaction txn, Author remote, AuthorId local, + boolean verified, boolean active) throws DbException { + ContactId c = db.addContact(txn, remote, local, verified, active); + Contact contact = db.getContact(txn, c); + for (AddContactHook hook : addHooks) + hook.addingContact(txn, contact); + return c; + } + @Override public ContactId addContact(Author remote, AuthorId local, SecretKey master, long timestamp, boolean alice, boolean verified, boolean active) -- GitLab