From cb4f20b6cafc94e1ea5d8ab65cce7d59610060f2 Mon Sep 17 00:00:00 2001
From: bontric <benjohnwie@gmail.com>
Date: Thu, 20 Sep 2018 18:33:24 +0200
Subject: [PATCH] Add handling for contacts without a mailbox to mailbox
 manager

---
 .../bramble/api/mailbox/MailboxManager.java         |  4 ++++
 .../bramble/mailbox/MailboxManagerImpl.java         | 13 ++++++++++++-
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/bramble-api/src/main/java/org/briarproject/bramble/api/mailbox/MailboxManager.java b/bramble-api/src/main/java/org/briarproject/bramble/api/mailbox/MailboxManager.java
index 3a0a14acb..aa11967a6 100644
--- a/bramble-api/src/main/java/org/briarproject/bramble/api/mailbox/MailboxManager.java
+++ b/bramble-api/src/main/java/org/briarproject/bramble/api/mailbox/MailboxManager.java
@@ -24,5 +24,9 @@ public interface MailboxManager {
 			TransportId transportId, TransportConnectionReader reader,
 			TransportConnectionWriter writer);
 
+	void handleInomingOwnerContactConnection(StreamContext ctx,
+			TransportId transportId, TransportConnectionReader reader,
+			TransportConnectionWriter writer);
+
 	void handleOwnerContactWithoutMailbox(MailboxInfo mailboxInfo);
 }
diff --git a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxManagerImpl.java b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxManagerImpl.java
index 7538b1451..cc87e1ab0 100644
--- a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxManagerImpl.java
+++ b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxManagerImpl.java
@@ -98,16 +98,27 @@ public class MailboxManagerImpl implements MailboxManager {
 						ContactType.MAILBOX_OWNER));
 	}
 
+	@Override
+	public void handleInomingOwnerContactConnection(StreamContext ctx,
+			TransportId transportId, TransportConnectionReader reader,
+			TransportConnectionWriter writer){
+		ioExecutor.execute(
+				new ManageMailboxConnection(ctx, transportId, reader, writer,
+						ContactType.MAILBOX_CONTACT)
+		);
+	}
+
 	@Override
 	public void handleOwnerContactWithoutMailbox(MailboxInfo mailboxInfo) {
 		if (null == privateMailboxSession)
 			return;
 
 		ioExecutor.execute(
-				() -> privateMailboxSession.handleOwnerContact(mailboxInfo));
+				() -> privateMailboxSession.handleContactWithoutPrivateMailbox(mailboxInfo));
 	}
 
 
+
 	private class ManageMailboxConnection implements Runnable {
 		private boolean incoming;
 
-- 
GitLab