From b34b4623eddd05e91b8413ddc19036fb9e6e5855 Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Mon, 31 Oct 2016 08:47:11 -0200 Subject: [PATCH] Replace transaction.setComplete() by database.commitTransaction() --- .../ForumSharingIntegrationTest.java | 8 +- .../briarproject/PrivateGroupManagerTest.java | 8 +- .../IntroductionIntegrationTest.java | 18 +-- .../api/db/DatabaseComponent.java | 14 +- .../org/briarproject/api/db/Transaction.java | 18 +-- .../briarproject/blogs/BlogManagerImpl.java | 16 +-- .../clients/BdfIncomingMessageHook.java | 4 +- .../clients/ClientHelperImpl.java | 16 +-- .../contact/ContactExchangeTaskImpl.java | 2 +- .../contact/ContactManagerImpl.java | 10 +- .../db/DatabaseComponentImpl.java | 17 ++- .../briarproject/feed/FeedManagerImpl.java | 10 +- .../briarproject/forum/ForumManagerImpl.java | 12 +- .../identity/IdentityManagerImpl.java | 4 +- .../introduction/IntroductionManagerImpl.java | 8 +- .../lifecycle/LifecycleManagerImpl.java | 2 +- .../messaging/ConversationManagerImpl.java | 4 +- .../messaging/MessagingManagerImpl.java | 6 +- .../privategroup/PrivateGroupManagerImpl.java | 16 +-- .../TransportPropertyManagerImpl.java | 8 +- .../settings/SettingsManagerImpl.java | 4 +- .../sharing/SharingManagerImpl.java | 16 +-- .../sync/DuplexOutgoingSession.java | 8 +- .../briarproject/sync/IncomingSession.java | 8 +- .../sync/SimplexOutgoingSession.java | 4 +- .../sync/ValidationManagerImpl.java | 18 +-- .../transport/KeyManagerImpl.java | 6 +- .../transport/TransportKeyManager.java | 2 +- .../blogs/BlogManagerImplTest.java | 10 +- .../clients/ClientHelperImplTest.java | 8 ++ .../contact/ContactManagerImplTest.java | 5 + .../db/DatabaseComponentImplTest.java | 38 ++--- .../introduction/IntroduceeManagerTest.java | 9 +- .../introduction/IntroducerManagerTest.java | 3 +- .../IntroductionManagerImplTest.java | 13 +- .../introduction/MessageSenderTest.java | 4 +- .../sync/SimplexOutgoingSessionTest.java | 6 + .../sync/ValidationManagerImplTest.java | 134 ++++++++---------- .../transport/TransportKeyManagerTest.java | 3 +- 39 files changed, 259 insertions(+), 241 deletions(-) diff --git a/briar-android-tests/src/test/java/org/briarproject/ForumSharingIntegrationTest.java b/briar-android-tests/src/test/java/org/briarproject/ForumSharingIntegrationTest.java index ccf25040a..6cc770b15 100644 --- a/briar-android-tests/src/test/java/org/briarproject/ForumSharingIntegrationTest.java +++ b/briar-android-tests/src/test/java/org/briarproject/ForumSharingIntegrationTest.java @@ -509,7 +509,7 @@ public class ForumSharingIntegrationTest extends BriarTestCase { Transaction txn = db.startTransaction(false); try { queue.sendMessage(txn, group, time, body, new Metadata()); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -580,7 +580,7 @@ public class ForumSharingIntegrationTest extends BriarTestCase { DatabaseComponent db1 = t1.getDatabaseComponent(); Transaction txn = db1.startTransaction(false); db1.addGroup(txn, forum0.getGroup()); - txn.setComplete(); + db1.commitTransaction(txn); db1.endTransaction(txn); // send invitation @@ -707,7 +707,7 @@ public class ForumSharingIntegrationTest extends BriarTestCase { Transaction txn = db.startTransaction(false); try { queue.sendMessage(txn, group, time, body, new Metadata()); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -736,7 +736,7 @@ public class ForumSharingIntegrationTest extends BriarTestCase { DatabaseComponent db2 = t2.getDatabaseComponent(); Transaction txn = db2.startTransaction(false); db2.addGroup(txn, forum0.getGroup()); - txn.setComplete(); + db2.commitTransaction(txn); db2.endTransaction(txn); // add listeners diff --git a/briar-android-tests/src/test/java/org/briarproject/PrivateGroupManagerTest.java b/briar-android-tests/src/test/java/org/briarproject/PrivateGroupManagerTest.java index 409d4af7f..75d879108 100644 --- a/briar-android-tests/src/test/java/org/briarproject/PrivateGroupManagerTest.java +++ b/briar-android-tests/src/test/java/org/briarproject/PrivateGroupManagerTest.java @@ -339,7 +339,7 @@ public class PrivateGroupManagerTest extends BriarIntegrationTest { t0.getDatabaseComponent() .setVisibleToContact(txn0, contactId1, privateGroup0.getId(), true); - txn0.setComplete(); + t0.getDatabaseComponent().commitTransaction(txn0); t0.getDatabaseComponent().endTransaction(txn0); // author1 joins privateGroup0 and refers to wrong NEW_MEMBER message @@ -358,7 +358,7 @@ public class PrivateGroupManagerTest extends BriarIntegrationTest { t1.getDatabaseComponent() .setVisibleToContact(txn1, contactId0, privateGroup0.getId(), true); - txn1.setComplete(); + t1.getDatabaseComponent().commitTransaction(txn1); t1.getDatabaseComponent().endTransaction(txn1); // sync join messages @@ -467,7 +467,7 @@ public class PrivateGroupManagerTest extends BriarIntegrationTest { t0.getDatabaseComponent() .setVisibleToContact(txn0, contactId1, privateGroup0.getId(), true); - txn0.setComplete(); + t0.getDatabaseComponent().commitTransaction(txn0);; t0.getDatabaseComponent().endTransaction(txn0); // author1 joins privateGroup0 @@ -487,7 +487,7 @@ public class PrivateGroupManagerTest extends BriarIntegrationTest { t1.getDatabaseComponent() .setVisibleToContact(txn1, contactId0, privateGroup0.getId(), true); - txn1.setComplete(); + t1.getDatabaseComponent().commitTransaction(txn1); t1.getDatabaseComponent().endTransaction(txn1); // sync join messages diff --git a/briar-android-tests/src/test/java/org/briarproject/introduction/IntroductionIntegrationTest.java b/briar-android-tests/src/test/java/org/briarproject/introduction/IntroductionIntegrationTest.java index 961b6ad66..90beb6595 100644 --- a/briar-android-tests/src/test/java/org/briarproject/introduction/IntroductionIntegrationTest.java +++ b/briar-android-tests/src/test/java/org/briarproject/introduction/IntroductionIntegrationTest.java @@ -590,7 +590,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { Transaction txn = db0.startTransaction(false); try { sender0.sendMessage(txn, d); - txn.setComplete(); + db0.commitTransaction(txn); } finally { db0.endTransaction(txn); } @@ -637,7 +637,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { Transaction txn = db1.startTransaction(false); try { map = db1.getMessageMetadata(txn, group1.getId()); - txn.setComplete(); + db1.commitTransaction(txn); } finally { db1.endTransaction(txn); } @@ -651,7 +651,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { txn = db1.startTransaction(false); try { map = db1.getMessageMetadata(txn, group1.getId()); - txn.setComplete(); + db1.commitTransaction(txn); } finally { db1.endTransaction(txn); } @@ -694,7 +694,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { Transaction txn = db0.startTransaction(false); try { map = db0.getMessageMetadata(txn, group1.getId()); - txn.setComplete(); + db0.commitTransaction(txn); } finally { db0.endTransaction(txn); } @@ -708,7 +708,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { txn = db0.startTransaction(false); try { map = db0.getMessageMetadata(txn, group1.getId()); - txn.setComplete(); + db0.commitTransaction(txn); } finally { db0.endTransaction(txn); } @@ -722,7 +722,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { txn = db0.startTransaction(false); try { map = db0.getMessageMetadata(txn, group1.getId()); - txn.setComplete(); + db0.commitTransaction(txn); } finally { db0.endTransaction(txn); } @@ -780,7 +780,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { try { db0.deleteMessage(txn, responseId); sender0.sendMessage(txn, response); - txn.setComplete(); + db0.commitTransaction(txn); } finally { db0.endTransaction(txn); } @@ -804,7 +804,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { txn = db2.startTransaction(true); try { contacts2 = db2.getContacts(txn); - txn.setComplete(); + db2.commitTransaction(txn); } finally { db2.endTransaction(txn); } @@ -832,7 +832,7 @@ public class IntroductionIntegrationTest extends BriarIntegrationTest { txn = db1.startTransaction(true); try { contacts1 = db1.getContacts(txn); - txn.setComplete(); + db1.commitTransaction(txn); } finally { db1.endTransaction(txn); } diff --git a/briar-api/src/org/briarproject/api/db/DatabaseComponent.java b/briar-api/src/org/briarproject/api/db/DatabaseComponent.java index cd1546951..b428e096b 100644 --- a/briar-api/src/org/briarproject/api/db/DatabaseComponent.java +++ b/briar-api/src/org/briarproject/api/db/DatabaseComponent.java @@ -52,11 +52,17 @@ public interface DatabaseComponent { Transaction startTransaction(boolean readOnly) throws DbException; /** - * Ends a transaction. If the transaction is marked as complete, the - * transaction is committed and any events attached to the transaction are - * broadcast; otherwise the transaction is aborted. + * Commits a transaction to the database. */ - void endTransaction(Transaction txn) throws DbException; + void commitTransaction(Transaction txn) throws DbException; + + /** + * Ends a transaction. If the transaction has not been committed, + * it will be aborted. If the transaction has been committed, + * any events attached to the transaction are broadcast. + * The database lock will be released in either case. + */ + void endTransaction(Transaction txn); /** * Stores a contact associated with the given local and remote pseudonyms, diff --git a/briar-api/src/org/briarproject/api/db/Transaction.java b/briar-api/src/org/briarproject/api/db/Transaction.java index 15297a573..9d6d473c9 100644 --- a/briar-api/src/org/briarproject/api/db/Transaction.java +++ b/briar-api/src/org/briarproject/api/db/Transaction.java @@ -15,7 +15,7 @@ public class Transaction { private final boolean readOnly; private List events = null; - private boolean complete = false; + private boolean committed = false; public Transaction(Object txn, boolean readOnly) { this.txn = txn; @@ -55,18 +55,18 @@ public class Transaction { } /** - * Returns true if the transaction is ready to be committed. + * Returns true if the transaction has been committed. */ - public boolean isComplete() { - return complete; + public boolean isCommitted() { + return committed; } /** - * Marks the transaction as ready to be committed. This method must not be - * called more than once. + * Marks the transaction as committed. This method should only be called + * by the DatabaseComponent. It must not be called more than once. */ - public void setComplete() { - if (complete) throw new IllegalStateException(); - complete = true; + public void setCommitted() { + if (committed) throw new IllegalStateException(); + committed = true; } } diff --git a/briar-core/src/org/briarproject/blogs/BlogManagerImpl.java b/briar-core/src/org/briarproject/blogs/BlogManagerImpl.java index dfb8066b9..ce34fd58f 100644 --- a/briar-core/src/org/briarproject/blogs/BlogManagerImpl.java +++ b/briar-core/src/org/briarproject/blogs/BlogManagerImpl.java @@ -199,7 +199,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, Transaction txn = db.startTransaction(true); try { boolean canBeRemoved = canBeRemoved(txn, g); - txn.setComplete(); + db.commitTransaction(txn); return canBeRemoved; } finally { db.endTransaction(txn); @@ -228,7 +228,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, for (RemoveBlogHook hook : removeHooks) hook.removingBlog(txn, b); db.removeGroup(txn, b.getGroup()); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -239,7 +239,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, Transaction txn = db.startTransaction(false); try { addLocalPost(txn, p); - txn.setComplete(); + db.commitTransaction(txn); } finally { //noinspection ThrowFromFinallyBlock db.endTransaction(txn); @@ -309,7 +309,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, meta); BlogPostAddedEvent event = new BlogPostAddedEvent(groupId, h, true); txn.attach(event); - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new DbException(e); } catch (GeneralSecurityException e) { @@ -394,7 +394,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, Transaction txn = db.startTransaction(true); try { blog = getBlog(txn, g); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -441,7 +441,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, for (Group g : groups) { blogs.add(blogFactory.parseBlog(g)); } - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -459,7 +459,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, BdfDictionary meta = clientHelper.getMessageMetadataAsDictionary(txn, m); BlogPostHeader h = getPostHeaderFromMetadata(txn, g, m, meta); - txn.setComplete(); + db.commitTransaction(txn); return h; } catch (FormatException e) { throw new DbException(e); @@ -538,7 +538,7 @@ class BlogManagerImpl extends BdfIncomingMessageHook implements BlogManager, authorStatuses); headers.add(h); } - txn.setComplete(); + db.commitTransaction(txn); return headers; } catch (FormatException e) { throw new DbException(e); diff --git a/briar-core/src/org/briarproject/clients/BdfIncomingMessageHook.java b/briar-core/src/org/briarproject/clients/BdfIncomingMessageHook.java index 575a2433d..394b031bc 100644 --- a/briar-core/src/org/briarproject/clients/BdfIncomingMessageHook.java +++ b/briar-core/src/org/briarproject/clients/BdfIncomingMessageHook.java @@ -95,7 +95,7 @@ public abstract class BdfIncomingMessageHook implements IncomingMessageHook, Transaction txn = db.startTransaction(true); try { count = getGroupCount(txn, g); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); @@ -157,7 +157,7 @@ public abstract class BdfIncomingMessageHook implements IncomingMessageHook, c.getUnreadCount() + (read ? -1 : 1)); clientHelper.mergeGroupMetadata(txn, g, d); } - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new DbException(e); } finally { diff --git a/briar-core/src/org/briarproject/clients/ClientHelperImpl.java b/briar-core/src/org/briarproject/clients/ClientHelperImpl.java index 9c0354419..d72d78b55 100644 --- a/briar-core/src/org/briarproject/clients/ClientHelperImpl.java +++ b/briar-core/src/org/briarproject/clients/ClientHelperImpl.java @@ -67,7 +67,7 @@ class ClientHelperImpl implements ClientHelper { Transaction txn = db.startTransaction(false); try { addLocalMessage(txn, m, metadata, shared); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -99,7 +99,7 @@ class ClientHelperImpl implements ClientHelper { Transaction txn = db.startTransaction(true); try { list = getMessageAsList(txn, m); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -122,7 +122,7 @@ class ClientHelperImpl implements ClientHelper { Transaction txn = db.startTransaction(true); try { dictionary = getGroupMetadataAsDictionary(txn, g); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -143,7 +143,7 @@ class ClientHelperImpl implements ClientHelper { Transaction txn = db.startTransaction(true); try { dictionary = getMessageMetadataAsDictionary(txn, m); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -164,7 +164,7 @@ class ClientHelperImpl implements ClientHelper { Transaction txn = db.startTransaction(true); try { map = getMessageMetadataAsDictionary(txn, g); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -190,7 +190,7 @@ class ClientHelperImpl implements ClientHelper { Transaction txn = db.startTransaction(true); try { map = getMessageMetadataAsDictionary(txn, g, query); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -216,7 +216,7 @@ class ClientHelperImpl implements ClientHelper { Transaction txn = db.startTransaction(false); try { mergeGroupMetadata(txn, g, metadata); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -234,7 +234,7 @@ class ClientHelperImpl implements ClientHelper { Transaction txn = db.startTransaction(false); try { mergeMessageMetadata(txn, m, metadata); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/contact/ContactExchangeTaskImpl.java b/briar-core/src/org/briarproject/contact/ContactExchangeTaskImpl.java index eb91ed6bd..85eb36f9a 100644 --- a/briar-core/src/org/briarproject/contact/ContactExchangeTaskImpl.java +++ b/briar-core/src/org/briarproject/contact/ContactExchangeTaskImpl.java @@ -314,7 +314,7 @@ public class ContactExchangeTaskImpl extends Thread localAuthor.getId(), master, timestamp, alice, true, true); transportPropertyManager.addRemoteProperties(txn, contactId, remoteProperties); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/contact/ContactManagerImpl.java b/briar-core/src/org/briarproject/contact/ContactManagerImpl.java index 42a0cd5ec..c0d13a44f 100644 --- a/briar-core/src/org/briarproject/contact/ContactManagerImpl.java +++ b/briar-core/src/org/briarproject/contact/ContactManagerImpl.java @@ -65,7 +65,7 @@ class ContactManagerImpl implements ContactManager { try { c = addContact(txn, remote, local, master, timestamp, alice, verified, active); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -78,7 +78,7 @@ class ContactManagerImpl implements ContactManager { Transaction txn = db.startTransaction(true); try { contact = db.getContact(txn, c); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -91,7 +91,7 @@ class ContactManagerImpl implements ContactManager { Transaction txn = db.startTransaction(true); try { contacts = db.getContacts(txn); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -105,7 +105,7 @@ class ContactManagerImpl implements ContactManager { Transaction txn = db.startTransaction(false); try { removeContact(txn, c); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -130,7 +130,7 @@ class ContactManagerImpl implements ContactManager { Transaction txn = db.startTransaction(true); try { exists = contactExists(txn, remoteAuthorId, localAuthorId); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/db/DatabaseComponentImpl.java b/briar-core/src/org/briarproject/db/DatabaseComponentImpl.java index 3265db024..36ff8b29d 100644 --- a/briar-core/src/org/briarproject/db/DatabaseComponentImpl.java +++ b/briar-core/src/org/briarproject/db/DatabaseComponentImpl.java @@ -139,21 +139,28 @@ class DatabaseComponentImpl implements DatabaseComponent { } @Override - public void endTransaction(Transaction transaction) throws DbException { + public void commitTransaction(Transaction transaction) throws DbException { + T txn = txnClass.cast(transaction.unbox()); + if (transaction.isCommitted()) throw new IllegalStateException(); + transaction.setCommitted(); + db.commitTransaction(txn); + } + + @Override + public void endTransaction(Transaction transaction) { try { T txn = txnClass.cast(transaction.unbox()); - if (transaction.isComplete()) db.commitTransaction(txn); - else db.abortTransaction(txn); + if (!transaction.isCommitted()) db.abortTransaction(txn); } finally { if (transaction.isReadOnly()) lock.readLock().unlock(); else lock.writeLock().unlock(); } - if (transaction.isComplete()) + if (transaction.isCommitted()) for (Event e : transaction.getEvents()) eventBus.broadcast(e); } private T unbox(Transaction transaction) { - if (transaction.isComplete()) throw new IllegalStateException(); + if (transaction.isCommitted()) throw new IllegalStateException(); return txnClass.cast(transaction.unbox()); } diff --git a/briar-core/src/org/briarproject/feed/FeedManagerImpl.java b/briar-core/src/org/briarproject/feed/FeedManagerImpl.java index 1d9eebea9..11e98eeac 100644 --- a/briar-core/src/org/briarproject/feed/FeedManagerImpl.java +++ b/briar-core/src/org/briarproject/feed/FeedManagerImpl.java @@ -180,7 +180,7 @@ class FeedManagerImpl implements FeedManager, Client, EventListener { List feeds = getFeeds(txn); feeds.add(feed); storeFeeds(txn, feeds); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -200,7 +200,7 @@ class FeedManagerImpl implements FeedManager, Client, EventListener { feeds.remove(feed); feeds.add(updatedFeed); storeFeeds(txn, feeds); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -222,7 +222,7 @@ class FeedManagerImpl implements FeedManager, Client, EventListener { } if (!found) throw new DbException(); storeFeeds(txn, feeds); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -234,7 +234,7 @@ class FeedManagerImpl implements FeedManager, Client, EventListener { Transaction txn = db.startTransaction(true); try { feeds = getFeeds(txn); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -405,7 +405,7 @@ class FeedManagerImpl implements FeedManager, Client, EventListener { if (entryTime > lastEntryTime) lastEntryTime = entryTime; } } - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/forum/ForumManagerImpl.java b/briar-core/src/org/briarproject/forum/ForumManagerImpl.java index 44f7659e1..f173fafc6 100644 --- a/briar-core/src/org/briarproject/forum/ForumManagerImpl.java +++ b/briar-core/src/org/briarproject/forum/ForumManagerImpl.java @@ -104,7 +104,7 @@ class ForumManagerImpl extends BdfIncomingMessageHook implements ForumManager { Transaction txn = db.startTransaction(false); try { db.addGroup(txn, f.getGroup()); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -118,7 +118,7 @@ class ForumManagerImpl extends BdfIncomingMessageHook implements ForumManager { for (RemoveForumHook hook : removeHooks) hook.removingForum(txn, f); db.removeGroup(txn, f.getGroup()); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -160,7 +160,7 @@ class ForumManagerImpl extends BdfIncomingMessageHook implements ForumManager { meta.put(MSG_KEY_READ, true); clientHelper.addLocalMessage(txn, p.getMessage(), meta, true); trackOutgoingMessage(txn, p.getMessage()); - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new RuntimeException(e); } finally { @@ -176,7 +176,7 @@ class ForumManagerImpl extends BdfIncomingMessageHook implements ForumManager { Transaction txn = db.startTransaction(true); try { forum = getForum(txn, g); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -200,7 +200,7 @@ class ForumManagerImpl extends BdfIncomingMessageHook implements ForumManager { Transaction txn = db.startTransaction(true); try { groups = db.getGroups(txn, CLIENT_ID); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -252,7 +252,7 @@ class ForumManagerImpl extends BdfIncomingMessageHook implements ForumManager { headers.add(getForumPostHeader(txn, entry.getKey(), meta, statuses)); } - txn.setComplete(); + db.commitTransaction(txn); return headers; } catch (FormatException e) { throw new DbException(e); diff --git a/briar-core/src/org/briarproject/identity/IdentityManagerImpl.java b/briar-core/src/org/briarproject/identity/IdentityManagerImpl.java index 61316e847..e01e13c4d 100644 --- a/briar-core/src/org/briarproject/identity/IdentityManagerImpl.java +++ b/briar-core/src/org/briarproject/identity/IdentityManagerImpl.java @@ -38,7 +38,7 @@ class IdentityManagerImpl implements IdentityManager { Transaction txn = db.startTransaction(false); try { db.addLocalAuthor(txn, localAuthor); - txn.setComplete(); + db.commitTransaction(txn); cachedAuthor = localAuthor; LOG.info("Local author registered"); } finally { @@ -53,7 +53,7 @@ class IdentityManagerImpl implements IdentityManager { try { cachedAuthor = loadLocalAuthor(txn); LOG.info("Local author loaded"); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/introduction/IntroductionManagerImpl.java b/briar-core/src/org/briarproject/introduction/IntroductionManagerImpl.java index e42ee1e09..95a72aed8 100644 --- a/briar-core/src/org/briarproject/introduction/IntroductionManagerImpl.java +++ b/briar-core/src/org/briarproject/introduction/IntroductionManagerImpl.java @@ -305,7 +305,7 @@ class IntroductionManagerImpl extends ConversationClientImpl Group g2 = getContactGroup(c2); trackMessage(txn, g1.getId(), timestamp, true); trackMessage(txn, g2.getId(), timestamp, true); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -325,7 +325,7 @@ class IntroductionManagerImpl extends ConversationClientImpl introduceeManager.acceptIntroduction(txn, state, timestamp); trackMessage(txn, g.getId(), timestamp, true); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -345,7 +345,7 @@ class IntroductionManagerImpl extends ConversationClientImpl introduceeManager.declineIntroduction(txn, state, timestamp); trackMessage(txn, g.getId(), timestamp, true); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -458,7 +458,7 @@ class IntroductionManagerImpl extends ConversationClientImpl if (LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e); } } - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new DbException(e); } finally { diff --git a/briar-core/src/org/briarproject/lifecycle/LifecycleManagerImpl.java b/briar-core/src/org/briarproject/lifecycle/LifecycleManagerImpl.java index f2857cad6..fa66b14fd 100644 --- a/briar-core/src/org/briarproject/lifecycle/LifecycleManagerImpl.java +++ b/briar-core/src/org/briarproject/lifecycle/LifecycleManagerImpl.java @@ -140,7 +140,7 @@ class LifecycleManagerImpl implements LifecycleManager { + " took " + duration + " ms"); } } - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/messaging/ConversationManagerImpl.java b/briar-core/src/org/briarproject/messaging/ConversationManagerImpl.java index 670af288e..dd9069078 100644 --- a/briar-core/src/org/briarproject/messaging/ConversationManagerImpl.java +++ b/briar-core/src/org/briarproject/messaging/ConversationManagerImpl.java @@ -46,7 +46,7 @@ class ConversationManagerImpl implements ConversationManager { Transaction txn = db.startTransaction(true); try { contact = db.getContact(txn, contactId); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -70,7 +70,7 @@ class ConversationManagerImpl implements ConversationManager { if (count.getLatestMsgTime() > latestTime) latestTime = count.getLatestMsgTime(); } - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/messaging/MessagingManagerImpl.java b/briar-core/src/org/briarproject/messaging/MessagingManagerImpl.java index cc4c1040f..bf1825299 100644 --- a/briar-core/src/org/briarproject/messaging/MessagingManagerImpl.java +++ b/briar-core/src/org/briarproject/messaging/MessagingManagerImpl.java @@ -122,7 +122,7 @@ class MessagingManagerImpl extends ConversationClientImpl meta.put("read", true); clientHelper.addLocalMessage(txn, m.getMessage(), meta, true); trackOutgoingMessage(txn, m.getMessage()); - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new RuntimeException(e); } finally { @@ -157,7 +157,7 @@ class MessagingManagerImpl extends ConversationClientImpl Transaction txn = db.startTransaction(true); try { contact = db.getContact(txn, c); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -175,7 +175,7 @@ class MessagingManagerImpl extends ConversationClientImpl g = getContactGroup(db.getContact(txn, c)).getId(); metadata = clientHelper.getMessageMetadataAsDictionary(txn, g); statuses = db.getMessageStatus(txn, c, g); - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new DbException(e); } finally { diff --git a/briar-core/src/org/briarproject/privategroup/PrivateGroupManagerImpl.java b/briar-core/src/org/briarproject/privategroup/PrivateGroupManagerImpl.java index a8a867de1..e96c7edf4 100644 --- a/briar-core/src/org/briarproject/privategroup/PrivateGroupManagerImpl.java +++ b/briar-core/src/org/briarproject/privategroup/PrivateGroupManagerImpl.java @@ -108,7 +108,7 @@ public class PrivateGroupManagerImpl extends BdfIncomingMessageHook implements clientHelper.mergeGroupMetadata(txn, group.getId(), meta); announceNewMember(txn, newMemberMsg); joinPrivateGroup(txn, joinMsg); - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new DbException(e); } finally { @@ -145,7 +145,7 @@ public class PrivateGroupManagerImpl extends BdfIncomingMessageHook implements } Group group = db.getGroup(txn, g); db.removeGroup(txn, group); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -157,7 +157,7 @@ public class PrivateGroupManagerImpl extends BdfIncomingMessageHook implements Transaction txn = db.startTransaction(true); try { previousMsgId = getPreviousMsgId(txn, g); - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new DbException(e); } finally { @@ -216,7 +216,7 @@ public class PrivateGroupManagerImpl extends BdfIncomingMessageHook implements setPreviousMsgId(txn, m.getMessage().getGroupId(), m.getMessage().getId()); trackOutgoingMessage(txn, m.getMessage()); - txn.setComplete(); + db.commitTransaction(txn); } catch (FormatException e) { throw new DbException(e); } finally { @@ -242,7 +242,7 @@ public class PrivateGroupManagerImpl extends BdfIncomingMessageHook implements Transaction txn = db.startTransaction(true); try { privateGroup = getPrivateGroup(txn, g); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -266,7 +266,7 @@ public class PrivateGroupManagerImpl extends BdfIncomingMessageHook implements Transaction txn = db.startTransaction(true); try { groups = db.getGroups(txn, getClientId()); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -333,7 +333,7 @@ public class PrivateGroupManagerImpl extends BdfIncomingMessageHook implements headers.add(getGroupMessageHeader(txn, g, entry.getKey(), meta, statuses)); } - txn.setComplete(); + db.commitTransaction(txn); return headers; } catch (FormatException e) { throw new DbException(e); @@ -387,7 +387,7 @@ public class PrivateGroupManagerImpl extends BdfIncomingMessageHook implements } members.add(new GroupMember(a, status, shared)); } - txn.setComplete(); + db.commitTransaction(txn); return members; } finally { db.endTransaction(txn); diff --git a/briar-core/src/org/briarproject/properties/TransportPropertyManagerImpl.java b/briar-core/src/org/briarproject/properties/TransportPropertyManagerImpl.java index cdf7d4eab..cabfe6d05 100644 --- a/briar-core/src/org/briarproject/properties/TransportPropertyManagerImpl.java +++ b/briar-core/src/org/briarproject/properties/TransportPropertyManagerImpl.java @@ -101,7 +101,7 @@ class TransportPropertyManagerImpl implements TransportPropertyManager, Transaction txn = db.startTransaction(true); try { local = getLocalProperties(txn); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -145,7 +145,7 @@ class TransportPropertyManagerImpl implements TransportPropertyManager, latest.messageId); p = parseProperties(message); } - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -176,7 +176,7 @@ class TransportPropertyManagerImpl implements TransportPropertyManager, remote.put(c.getId(), parseProperties(message)); } } - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -222,7 +222,7 @@ class TransportPropertyManagerImpl implements TransportPropertyManager, true, true); } } - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/settings/SettingsManagerImpl.java b/briar-core/src/org/briarproject/settings/SettingsManagerImpl.java index 3df277318..cfd20daf2 100644 --- a/briar-core/src/org/briarproject/settings/SettingsManagerImpl.java +++ b/briar-core/src/org/briarproject/settings/SettingsManagerImpl.java @@ -24,7 +24,7 @@ class SettingsManagerImpl implements SettingsManager { Transaction txn = db.startTransaction(true); try { s = db.getSettings(txn, namespace); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } @@ -36,7 +36,7 @@ class SettingsManagerImpl implements SettingsManager { Transaction txn = db.startTransaction(false); try { db.mergeSettings(txn, s, namespace); - txn.setComplete(); + db.commitTransaction(txn); } finally { db.endTransaction(txn); } diff --git a/briar-core/src/org/briarproject/sharing/SharingManagerImpl.java b/briar-core/src/org/briarproject/sharing/SharingManagerImpl.java index a35501877..9699f3a34 100644 --- a/briar-core/src/org/briarproject/sharing/SharingManagerImpl.java +++ b/briar-core/src/org/briarproject/sharing/SharingManagerImpl.java @@ -300,7 +300,7 @@ abstract class SharingManagerImpl