From 0c00f30d5aa55a44f00df51d8503baede924e43f Mon Sep 17 00:00:00 2001
From: bontric <benjohnwie@gmail.com>
Date: Fri, 31 Aug 2018 20:24:52 +0200
Subject: [PATCH] add MailboxOwner sync session implementation (WIP)

---
 .../bramble/mailbox/MailboxOwnerSession.java         | 12 +++++++++++-
 .../bramble/mailbox/PrivateMailboxSession.java       |  2 +-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxOwnerSession.java b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxOwnerSession.java
index 8cbc6a0bd..bf31990da 100644
--- a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxOwnerSession.java
+++ b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxOwnerSession.java
@@ -10,9 +10,13 @@ import org.briarproject.bramble.mailbox.protocol.MailboxRequestStore;
 import org.briarproject.bramble.mailbox.protocol.MailboxRequestSync;
 import org.briarproject.bramble.mailbox.protocol.MailboxRequestTake;
 
+import java.io.IOException;
 import java.util.concurrent.Executor;
 import java.util.logging.Logger;
 
+import static java.util.logging.Level.WARNING;
+import static org.briarproject.bramble.util.LogUtils.logException;
+
 class MailboxOwnerSession extends MailboxSession {
 
 	private static final Logger LOG =
@@ -39,10 +43,16 @@ class MailboxOwnerSession extends MailboxSession {
 	@Override
 	public void run() {
 		ioExecutor.execute(() -> readRequests());
+		runDuplexOutgoingSession();
 	}
 
 	@Override
-	public void handleSync(MailboxRequestSync mailboxRequestSync) {
+	public void handleSync(MailboxRequestSync req) {
+		try {
+			handleSyncStream(req.getSyncStream());
+		} catch (IOException e) {
+			logException(LOG, WARNING, e);
+		}
 	}
 
 	@Override
diff --git a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/PrivateMailboxSession.java b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/PrivateMailboxSession.java
index 4bae0e59c..044f2432a 100644
--- a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/PrivateMailboxSession.java
+++ b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/PrivateMailboxSession.java
@@ -38,7 +38,7 @@ class PrivateMailboxSession extends MailboxSession {
 	@Override
 	public void run() {
 		ioExecutor.execute(() -> super.readRequests());
-		ioExecutor.execute(() -> runDuplexOutgoingSession());
+		runDuplexOutgoingSession();
 	}
 
 	@Override
-- 
GitLab