mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-17 21:29:54 +01:00
Refactor transport preferences.
This commit is contained in:
@@ -1,12 +1,12 @@
|
|||||||
package org.briarproject.bramble.api.plugin;
|
package org.briarproject.bramble.api.plugin;
|
||||||
|
|
||||||
import org.briarproject.bramble.api.Pair;
|
|
||||||
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
||||||
import org.briarproject.bramble.api.plugin.duplex.DuplexPluginFactory;
|
import org.briarproject.bramble.api.plugin.duplex.DuplexPluginFactory;
|
||||||
import org.briarproject.bramble.api.plugin.simplex.SimplexPluginFactory;
|
import org.briarproject.bramble.api.plugin.simplex.SimplexPluginFactory;
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
@NotNullByDefault
|
@NotNullByDefault
|
||||||
public interface PluginConfig {
|
public interface PluginConfig {
|
||||||
@@ -18,8 +18,9 @@ public interface PluginConfig {
|
|||||||
boolean shouldPoll();
|
boolean shouldPoll();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns a list of transport preferences. For each pair in the list,
|
* Returns a map representing transport preferences. For each entry in the
|
||||||
* the first transport is preferred to the second.
|
* map, connections via the transports identified by the value are
|
||||||
|
* preferred to connections via the transport identified by the key.
|
||||||
*/
|
*/
|
||||||
List<Pair<TransportId, TransportId>> getTransportPreferences();
|
Map<TransportId, List<TransportId>> getTransportPreferences();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package org.briarproject.bramble.connection;
|
package org.briarproject.bramble.connection;
|
||||||
|
|
||||||
import org.briarproject.bramble.api.Bytes;
|
import org.briarproject.bramble.api.Bytes;
|
||||||
import org.briarproject.bramble.api.Pair;
|
|
||||||
import org.briarproject.bramble.api.connection.ConnectionRegistry;
|
import org.briarproject.bramble.api.connection.ConnectionRegistry;
|
||||||
import org.briarproject.bramble.api.connection.InterruptibleConnection;
|
import org.briarproject.bramble.api.connection.InterruptibleConnection;
|
||||||
import org.briarproject.bramble.api.contact.ContactId;
|
import org.briarproject.bramble.api.contact.ContactId;
|
||||||
@@ -45,7 +44,7 @@ class ConnectionRegistryImpl implements ConnectionRegistry {
|
|||||||
getLogger(ConnectionRegistryImpl.class.getName());
|
getLogger(ConnectionRegistryImpl.class.getName());
|
||||||
|
|
||||||
private final EventBus eventBus;
|
private final EventBus eventBus;
|
||||||
private final Map<TransportId, List<TransportId>> betterTransports;
|
private final Map<TransportId, List<TransportId>> transportPrefs;
|
||||||
|
|
||||||
private final Object lock = new Object();
|
private final Object lock = new Object();
|
||||||
@GuardedBy("lock")
|
@GuardedBy("lock")
|
||||||
@@ -56,26 +55,11 @@ class ConnectionRegistryImpl implements ConnectionRegistry {
|
|||||||
@Inject
|
@Inject
|
||||||
ConnectionRegistryImpl(EventBus eventBus, PluginConfig pluginConfig) {
|
ConnectionRegistryImpl(EventBus eventBus, PluginConfig pluginConfig) {
|
||||||
this.eventBus = eventBus;
|
this.eventBus = eventBus;
|
||||||
betterTransports = new HashMap<>();
|
transportPrefs = pluginConfig.getTransportPreferences();
|
||||||
initTransportPreferences(pluginConfig.getTransportPreferences());
|
|
||||||
contactConnections = new HashMap<>();
|
contactConnections = new HashMap<>();
|
||||||
connectedPendingContacts = new HashSet<>();
|
connectedPendingContacts = new HashSet<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initTransportPreferences(
|
|
||||||
List<Pair<TransportId, TransportId>> prefs) {
|
|
||||||
for (Pair<TransportId, TransportId> pair : prefs) {
|
|
||||||
TransportId better = pair.getFirst();
|
|
||||||
TransportId worse = pair.getSecond();
|
|
||||||
List<TransportId> betterList = betterTransports.get(worse);
|
|
||||||
if (betterList == null) {
|
|
||||||
betterList = new ArrayList<>();
|
|
||||||
betterTransports.put(worse, betterList);
|
|
||||||
}
|
|
||||||
betterList.add(better);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void registerConnection(ContactId c, TransportId t,
|
public void registerConnection(ContactId c, TransportId t,
|
||||||
InterruptibleConnection conn, boolean incoming) {
|
InterruptibleConnection conn, boolean incoming) {
|
||||||
@@ -146,7 +130,7 @@ class ConnectionRegistryImpl implements ConnectionRegistry {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private List<TransportId> getBetterTransports(TransportId t) {
|
private List<TransportId> getBetterTransports(TransportId t) {
|
||||||
List<TransportId> better = betterTransports.get(t);
|
List<TransportId> better = transportPrefs.get(t);
|
||||||
return better == null ? emptyList() : better;
|
return better == null ? emptyList() : better;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
package org.briarproject.bramble.connection;
|
package org.briarproject.bramble.connection;
|
||||||
|
|
||||||
import org.briarproject.bramble.api.Pair;
|
|
||||||
import org.briarproject.bramble.api.connection.ConnectionRegistry;
|
import org.briarproject.bramble.api.connection.ConnectionRegistry;
|
||||||
import org.briarproject.bramble.api.connection.InterruptibleConnection;
|
import org.briarproject.bramble.api.connection.InterruptibleConnection;
|
||||||
import org.briarproject.bramble.api.contact.ContactId;
|
import org.briarproject.bramble.api.contact.ContactId;
|
||||||
@@ -22,7 +21,9 @@ import org.junit.Test;
|
|||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
import static java.util.Collections.emptyList;
|
import static java.util.Collections.emptyList;
|
||||||
|
import static java.util.Collections.emptyMap;
|
||||||
import static java.util.Collections.singletonList;
|
import static java.util.Collections.singletonList;
|
||||||
|
import static java.util.Collections.singletonMap;
|
||||||
import static org.briarproject.bramble.test.TestUtils.getContactId;
|
import static org.briarproject.bramble.test.TestUtils.getContactId;
|
||||||
import static org.briarproject.bramble.test.TestUtils.getRandomId;
|
import static org.briarproject.bramble.test.TestUtils.getRandomId;
|
||||||
import static org.briarproject.bramble.test.TestUtils.getTransportId;
|
import static org.briarproject.bramble.test.TestUtils.getTransportId;
|
||||||
@@ -60,7 +61,7 @@ public class ConnectionRegistryImplTest extends BrambleMockTestCase {
|
|||||||
public void testRegisterMultipleConnections() {
|
public void testRegisterMultipleConnections() {
|
||||||
context.checking(new Expectations() {{
|
context.checking(new Expectations() {{
|
||||||
allowing(pluginConfig).getTransportPreferences();
|
allowing(pluginConfig).getTransportPreferences();
|
||||||
will(returnValue(emptyList()));
|
will(returnValue(emptyMap()));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
ConnectionRegistry c =
|
ConnectionRegistry c =
|
||||||
@@ -141,7 +142,7 @@ public class ConnectionRegistryImplTest extends BrambleMockTestCase {
|
|||||||
public void testRegisterMultipleContacts() {
|
public void testRegisterMultipleContacts() {
|
||||||
context.checking(new Expectations() {{
|
context.checking(new Expectations() {{
|
||||||
allowing(pluginConfig).getTransportPreferences();
|
allowing(pluginConfig).getTransportPreferences();
|
||||||
will(returnValue(emptyList()));
|
will(returnValue(emptyMap()));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
ConnectionRegistry c =
|
ConnectionRegistry c =
|
||||||
@@ -183,7 +184,7 @@ public class ConnectionRegistryImplTest extends BrambleMockTestCase {
|
|||||||
context.checking(new Expectations() {{
|
context.checking(new Expectations() {{
|
||||||
allowing(pluginConfig).getTransportPreferences();
|
allowing(pluginConfig).getTransportPreferences();
|
||||||
will(returnValue(
|
will(returnValue(
|
||||||
singletonList(new Pair<>(transportId2, transportId1))));
|
singletonMap(transportId1, singletonList(transportId2))));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
ConnectionRegistry c =
|
ConnectionRegistry c =
|
||||||
@@ -256,7 +257,7 @@ public class ConnectionRegistryImplTest extends BrambleMockTestCase {
|
|||||||
context.checking(new Expectations() {{
|
context.checking(new Expectations() {{
|
||||||
allowing(pluginConfig).getTransportPreferences();
|
allowing(pluginConfig).getTransportPreferences();
|
||||||
will(returnValue(
|
will(returnValue(
|
||||||
singletonList(new Pair<>(transportId1, transportId2))));
|
singletonMap(transportId2, singletonList(transportId1))));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
ConnectionRegistry c =
|
ConnectionRegistry c =
|
||||||
@@ -357,7 +358,7 @@ public class ConnectionRegistryImplTest extends BrambleMockTestCase {
|
|||||||
context.checking(new Expectations() {{
|
context.checking(new Expectations() {{
|
||||||
allowing(pluginConfig).getTransportPreferences();
|
allowing(pluginConfig).getTransportPreferences();
|
||||||
will(returnValue(
|
will(returnValue(
|
||||||
singletonList(new Pair<>(transportId2, transportId1))));
|
singletonMap(transportId1, singletonList(transportId2))));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
ConnectionRegistry c =
|
ConnectionRegistry c =
|
||||||
@@ -452,7 +453,7 @@ public class ConnectionRegistryImplTest extends BrambleMockTestCase {
|
|||||||
public void testNewConnectionIsInterruptedIfOldConnectionHasHigherPriority() {
|
public void testNewConnectionIsInterruptedIfOldConnectionHasHigherPriority() {
|
||||||
context.checking(new Expectations() {{
|
context.checking(new Expectations() {{
|
||||||
allowing(pluginConfig).getTransportPreferences();
|
allowing(pluginConfig).getTransportPreferences();
|
||||||
will(returnValue(emptyList()));
|
will(returnValue(emptyMap()));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
ConnectionRegistry c =
|
ConnectionRegistry c =
|
||||||
@@ -517,7 +518,7 @@ public class ConnectionRegistryImplTest extends BrambleMockTestCase {
|
|||||||
public void testOldConnectionIsInterruptedIfNewConnectionHasHigherPriority() {
|
public void testOldConnectionIsInterruptedIfNewConnectionHasHigherPriority() {
|
||||||
context.checking(new Expectations() {{
|
context.checking(new Expectations() {{
|
||||||
allowing(pluginConfig).getTransportPreferences();
|
allowing(pluginConfig).getTransportPreferences();
|
||||||
will(returnValue(emptyList()));
|
will(returnValue(emptyMap()));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
ConnectionRegistry c =
|
ConnectionRegistry c =
|
||||||
@@ -567,7 +568,7 @@ public class ConnectionRegistryImplTest extends BrambleMockTestCase {
|
|||||||
public void testRegisterAndUnregisterPendingContacts() {
|
public void testRegisterAndUnregisterPendingContacts() {
|
||||||
context.checking(new Expectations() {{
|
context.checking(new Expectations() {{
|
||||||
allowing(pluginConfig).getTransportPreferences();
|
allowing(pluginConfig).getTransportPreferences();
|
||||||
will(returnValue(emptyList()));
|
will(returnValue(emptyMap()));
|
||||||
}});
|
}});
|
||||||
|
|
||||||
ConnectionRegistry c =
|
ConnectionRegistry c =
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
package org.briarproject.bramble.test;
|
package org.briarproject.bramble.test;
|
||||||
|
|
||||||
import org.briarproject.bramble.api.Pair;
|
|
||||||
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
||||||
import org.briarproject.bramble.api.plugin.PluginCallback;
|
import org.briarproject.bramble.api.plugin.PluginCallback;
|
||||||
import org.briarproject.bramble.api.plugin.PluginConfig;
|
import org.briarproject.bramble.api.plugin.PluginConfig;
|
||||||
@@ -12,13 +11,14 @@ import org.briarproject.bramble.api.plugin.simplex.SimplexPluginFactory;
|
|||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
|
|
||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
import dagger.Provides;
|
import dagger.Provides;
|
||||||
|
|
||||||
import static java.util.Collections.emptyList;
|
import static java.util.Collections.emptyMap;
|
||||||
import static java.util.Collections.singletonList;
|
import static java.util.Collections.singletonList;
|
||||||
import static org.briarproject.bramble.test.TestUtils.getTransportId;
|
import static org.briarproject.bramble.test.TestUtils.getTransportId;
|
||||||
|
|
||||||
@@ -89,11 +89,11 @@ public class TestPluginConfigModule {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<Pair<TransportId, TransportId>> getTransportPreferences() {
|
public Map<TransportId, List<TransportId>> getTransportPreferences() {
|
||||||
return emptyList();
|
return emptyMap();
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
return pluginConfig;
|
return pluginConfig;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
package org.briarproject.bramble.plugin;
|
package org.briarproject.bramble.plugin;
|
||||||
|
|
||||||
import org.briarproject.bramble.api.Pair;
|
|
||||||
import org.briarproject.bramble.api.event.EventBus;
|
import org.briarproject.bramble.api.event.EventBus;
|
||||||
import org.briarproject.bramble.api.io.TimeoutMonitor;
|
import org.briarproject.bramble.api.io.TimeoutMonitor;
|
||||||
import org.briarproject.bramble.api.lifecycle.IoExecutor;
|
import org.briarproject.bramble.api.lifecycle.IoExecutor;
|
||||||
@@ -22,6 +21,7 @@ import org.briarproject.bramble.plugin.tcp.WanTcpPluginFactory;
|
|||||||
import java.security.SecureRandom;
|
import java.security.SecureRandom;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.concurrent.Executor;
|
import java.util.concurrent.Executor;
|
||||||
|
|
||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
@@ -30,6 +30,7 @@ import dagger.Provides;
|
|||||||
import static java.util.Arrays.asList;
|
import static java.util.Arrays.asList;
|
||||||
import static java.util.Collections.emptyList;
|
import static java.util.Collections.emptyList;
|
||||||
import static java.util.Collections.singletonList;
|
import static java.util.Collections.singletonList;
|
||||||
|
import static java.util.Collections.singletonMap;
|
||||||
|
|
||||||
@Module
|
@Module
|
||||||
public class DesktopPluginModule extends PluginModule {
|
public class DesktopPluginModule extends PluginModule {
|
||||||
@@ -69,10 +70,10 @@ public class DesktopPluginModule extends PluginModule {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<Pair<TransportId, TransportId>> getTransportPreferences() {
|
public Map<TransportId, List<TransportId>> getTransportPreferences() {
|
||||||
// Prefer LAN to Bluetooth
|
// Prefer LAN to Bluetooth
|
||||||
return singletonList(
|
return singletonMap(BluetoothConstants.ID,
|
||||||
new Pair<>(LanTcpConstants.ID, BluetoothConstants.ID));
|
singletonList(LanTcpConstants.ID));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
return pluginConfig;
|
return pluginConfig;
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ import android.os.StrictMode;
|
|||||||
import com.vanniktech.emoji.RecentEmoji;
|
import com.vanniktech.emoji.RecentEmoji;
|
||||||
|
|
||||||
import org.briarproject.bramble.api.FeatureFlags;
|
import org.briarproject.bramble.api.FeatureFlags;
|
||||||
import org.briarproject.bramble.api.Pair;
|
|
||||||
import org.briarproject.bramble.api.battery.BatteryManager;
|
import org.briarproject.bramble.api.battery.BatteryManager;
|
||||||
import org.briarproject.bramble.api.crypto.CryptoComponent;
|
import org.briarproject.bramble.api.crypto.CryptoComponent;
|
||||||
import org.briarproject.bramble.api.crypto.KeyStrengthener;
|
import org.briarproject.bramble.api.crypto.KeyStrengthener;
|
||||||
@@ -53,6 +52,7 @@ import java.security.GeneralSecurityException;
|
|||||||
import java.security.SecureRandom;
|
import java.security.SecureRandom;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.concurrent.Executor;
|
import java.util.concurrent.Executor;
|
||||||
import java.util.concurrent.ScheduledExecutorService;
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
|
|
||||||
@@ -68,6 +68,7 @@ import static android.os.Build.VERSION.SDK_INT;
|
|||||||
import static java.util.Arrays.asList;
|
import static java.util.Arrays.asList;
|
||||||
import static java.util.Collections.emptyList;
|
import static java.util.Collections.emptyList;
|
||||||
import static java.util.Collections.singletonList;
|
import static java.util.Collections.singletonList;
|
||||||
|
import static java.util.Collections.singletonMap;
|
||||||
import static org.briarproject.bramble.api.reporting.ReportingConstants.DEV_ONION_ADDRESS;
|
import static org.briarproject.bramble.api.reporting.ReportingConstants.DEV_ONION_ADDRESS;
|
||||||
import static org.briarproject.bramble.api.reporting.ReportingConstants.DEV_PUBLIC_KEY_HEX;
|
import static org.briarproject.bramble.api.reporting.ReportingConstants.DEV_PUBLIC_KEY_HEX;
|
||||||
import static org.briarproject.briar.android.TestingConstants.IS_DEBUG_BUILD;
|
import static org.briarproject.briar.android.TestingConstants.IS_DEBUG_BUILD;
|
||||||
@@ -160,12 +161,11 @@ public class AppModule {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<Pair<TransportId, TransportId>> getTransportPreferences() {
|
public Map<TransportId, List<TransportId>> getTransportPreferences() {
|
||||||
// Prefer LAN to Bluetooth
|
// Prefer LAN to Bluetooth
|
||||||
return singletonList(
|
return singletonMap(BluetoothConstants.ID,
|
||||||
new Pair<>(LanTcpConstants.ID, BluetoothConstants.ID));
|
singletonList(LanTcpConstants.ID));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
return pluginConfig;
|
return pluginConfig;
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import com.fasterxml.jackson.databind.ObjectMapper
|
|||||||
import dagger.Module
|
import dagger.Module
|
||||||
import dagger.Provides
|
import dagger.Provides
|
||||||
import org.briarproject.bramble.api.FeatureFlags
|
import org.briarproject.bramble.api.FeatureFlags
|
||||||
import org.briarproject.bramble.api.Pair
|
|
||||||
import org.briarproject.bramble.api.battery.BatteryManager
|
import org.briarproject.bramble.api.battery.BatteryManager
|
||||||
import org.briarproject.bramble.api.db.DatabaseConfig
|
import org.briarproject.bramble.api.db.DatabaseConfig
|
||||||
import org.briarproject.bramble.api.event.EventBus
|
import org.briarproject.bramble.api.event.EventBus
|
||||||
@@ -33,7 +32,7 @@ import org.briarproject.briar.headless.forums.HeadlessForumModule
|
|||||||
import org.briarproject.briar.headless.messaging.HeadlessMessagingModule
|
import org.briarproject.briar.headless.messaging.HeadlessMessagingModule
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.util.Collections.emptyList
|
import java.util.Collections.emptyList
|
||||||
import java.util.Collections.singletonList
|
import java.util.Collections.singletonMap
|
||||||
import java.util.concurrent.Executor
|
import java.util.concurrent.Executor
|
||||||
import javax.inject.Singleton
|
import javax.inject.Singleton
|
||||||
import javax.net.SocketFactory
|
import javax.net.SocketFactory
|
||||||
@@ -89,8 +88,9 @@ internal class HeadlessModule(private val appDir: File) {
|
|||||||
override fun getDuplexFactories(): Collection<DuplexPluginFactory> = duplex
|
override fun getDuplexFactories(): Collection<DuplexPluginFactory> = duplex
|
||||||
override fun getSimplexFactories(): Collection<SimplexPluginFactory> = emptyList()
|
override fun getSimplexFactories(): Collection<SimplexPluginFactory> = emptyList()
|
||||||
override fun shouldPoll(): Boolean = true
|
override fun shouldPoll(): Boolean = true
|
||||||
override fun getTransportPreferences(): List<Pair<TransportId, TransportId>> =
|
// Prefer LAN to Bluetooth
|
||||||
singletonList(Pair(LanTcpConstants.ID, BluetoothConstants.ID))
|
override fun getTransportPreferences(): Map<TransportId, List<TransportId>> =
|
||||||
|
singletonMap(BluetoothConstants.ID, listOf(LanTcpConstants.ID))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import com.fasterxml.jackson.databind.ObjectMapper
|
|||||||
import dagger.Module
|
import dagger.Module
|
||||||
import dagger.Provides
|
import dagger.Provides
|
||||||
import org.briarproject.bramble.api.FeatureFlags
|
import org.briarproject.bramble.api.FeatureFlags
|
||||||
import org.briarproject.bramble.api.Pair
|
|
||||||
import org.briarproject.bramble.api.db.DatabaseConfig
|
import org.briarproject.bramble.api.db.DatabaseConfig
|
||||||
import org.briarproject.bramble.api.plugin.BluetoothConstants
|
import org.briarproject.bramble.api.plugin.BluetoothConstants
|
||||||
import org.briarproject.bramble.api.plugin.LanTcpConstants
|
import org.briarproject.bramble.api.plugin.LanTcpConstants
|
||||||
@@ -22,8 +21,8 @@ import org.briarproject.briar.headless.event.HeadlessEventModule
|
|||||||
import org.briarproject.briar.headless.forums.HeadlessForumModule
|
import org.briarproject.briar.headless.forums.HeadlessForumModule
|
||||||
import org.briarproject.briar.headless.messaging.HeadlessMessagingModule
|
import org.briarproject.briar.headless.messaging.HeadlessMessagingModule
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
import java.util.*
|
||||||
import java.util.Collections.emptyList
|
import java.util.Collections.emptyList
|
||||||
import java.util.Collections.singletonList
|
|
||||||
import javax.inject.Singleton
|
import javax.inject.Singleton
|
||||||
|
|
||||||
@Module(
|
@Module(
|
||||||
@@ -60,8 +59,9 @@ internal class HeadlessTestModule(private val appDir: File) {
|
|||||||
override fun getDuplexFactories(): Collection<DuplexPluginFactory> = emptyList()
|
override fun getDuplexFactories(): Collection<DuplexPluginFactory> = emptyList()
|
||||||
override fun getSimplexFactories(): Collection<SimplexPluginFactory> = emptyList()
|
override fun getSimplexFactories(): Collection<SimplexPluginFactory> = emptyList()
|
||||||
override fun shouldPoll(): Boolean = false
|
override fun shouldPoll(): Boolean = false
|
||||||
override fun getTransportPreferences(): List<Pair<TransportId, TransportId>> =
|
// Prefer LAN to Bluetooth
|
||||||
singletonList(Pair(LanTcpConstants.ID, BluetoothConstants.ID))
|
override fun getTransportPreferences(): Map<TransportId, List<TransportId>> =
|
||||||
|
Collections.singletonMap(BluetoothConstants.ID, listOf(LanTcpConstants.ID))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user