* Locking: write.
*/
- boolean open() throws DbException, IOException;
+ boolean open() throws DbException;
/**
* Prevents new transactions from starting, waits for all current
@@ -259,6 +257,13 @@ interface Database
+ * Locking: read.
+ */
+ DeviceId getDeviceId(T txn) throws DbException;
+
/**
* Returns the amount of free storage space available to the database, in
* bytes. This is based on the minimum of the space available on the device
@@ -302,22 +307,6 @@ interface Database
- * Locking: read.
- */
- Map
- * Locking: read.
- */
- TransportProperties getLocalProperties(T txn, TransportId t)
- throws DbException;
-
/**
* Returns the metadata for all messages in the given group.
*
@@ -403,14 +392,6 @@ interface Database
- * Locking: read.
- */
- Map
- * Locking: write.
- */
- Collection
@@ -476,16 +448,6 @@ interface Database
- * Locking: write.
- */
- Collection
@@ -529,15 +491,6 @@ interface Database
- * Locking: write.
- */
- void mergeLocalProperties(T txn, TransportId t, TransportProperties p)
- throws DbException;
-
/*
* Merges the given metadata with the existing metadata for the given
* message.
@@ -689,26 +642,6 @@ interface Database
- * Locking: write.
- */
- void setRemoteProperties(T txn, ContactId c,
- Map
- * Locking: write.
- */
- boolean setRemoteProperties(T txn, ContactId c, TransportId t,
- TransportProperties p, long version) throws DbException;
-
/**
* Records a subscription ack from the given contact for the given version,
* unless the contact has already acked an equal or higher version.
@@ -718,15 +651,6 @@ interface Database
- * Locking: write.
- */
- void setTransportUpdateAcked(T txn, ContactId c, TransportId t,
- long version) throws DbException;
-
/**
* Makes a group visible or invisible to future contacts by default.
*
diff --git a/briar-core/src/org/briarproject/db/DatabaseComponentImpl.java b/briar-core/src/org/briarproject/db/DatabaseComponentImpl.java
index 85ff594e6..39c0f796f 100644
--- a/briar-core/src/org/briarproject/db/DatabaseComponentImpl.java
+++ b/briar-core/src/org/briarproject/db/DatabaseComponentImpl.java
@@ -1,8 +1,7 @@
package org.briarproject.db;
-import org.briarproject.api.Settings;
+import org.briarproject.api.DeviceId;
import org.briarproject.api.TransportId;
-import org.briarproject.api.TransportProperties;
import org.briarproject.api.contact.Contact;
import org.briarproject.api.contact.ContactId;
import org.briarproject.api.db.ContactExistsException;
@@ -19,7 +18,6 @@ import org.briarproject.api.db.NoSuchTransportException;
import org.briarproject.api.db.StorageStatus;
import org.briarproject.api.event.EventBus;
import org.briarproject.api.event.LocalSubscriptionsUpdatedEvent;
-import org.briarproject.api.event.LocalTransportsUpdatedEvent;
import org.briarproject.api.event.MessageAddedEvent;
import org.briarproject.api.event.MessageRequestedEvent;
import org.briarproject.api.event.MessageToAckEvent;
@@ -28,7 +26,6 @@ import org.briarproject.api.event.MessageValidatedEvent;
import org.briarproject.api.event.MessagesAckedEvent;
import org.briarproject.api.event.MessagesSentEvent;
import org.briarproject.api.event.RemoteSubscriptionsUpdatedEvent;
-import org.briarproject.api.event.RemoteTransportsUpdatedEvent;
import org.briarproject.api.event.SettingsUpdatedEvent;
import org.briarproject.api.event.SubscriptionAddedEvent;
import org.briarproject.api.event.SubscriptionRemovedEvent;
@@ -38,6 +35,7 @@ import org.briarproject.api.identity.Author;
import org.briarproject.api.identity.AuthorId;
import org.briarproject.api.identity.LocalAuthor;
import org.briarproject.api.lifecycle.ShutdownManager;
+import org.briarproject.api.settings.Settings;
import org.briarproject.api.sync.Ack;
import org.briarproject.api.sync.ClientId;
import org.briarproject.api.sync.Group;
@@ -49,8 +47,6 @@ import org.briarproject.api.sync.Offer;
import org.briarproject.api.sync.Request;
import org.briarproject.api.sync.SubscriptionAck;
import org.briarproject.api.sync.SubscriptionUpdate;
-import org.briarproject.api.sync.TransportAck;
-import org.briarproject.api.sync.TransportUpdate;
import org.briarproject.api.transport.TransportKeys;
import java.io.IOException;
@@ -99,7 +95,7 @@ class DatabaseComponentImpl