diff --git a/briar-android/res/values/roboguice.xml b/briar-android/res/values/roboguice.xml index 92220cc84..7f33cf6d5 100644 --- a/briar-android/res/values/roboguice.xml +++ b/briar-android/res/values/roboguice.xml @@ -2,14 +2,18 @@ org.briarproject.android.AndroidModule + org.briarproject.contact.ContactModule org.briarproject.crypto.CryptoModule org.briarproject.data.DataModule org.briarproject.db.DatabaseModule org.briarproject.event.EventModule + org.briarproject.forum.ForumModule + org.briarproject.identity.IdentityModule org.briarproject.invitation.InvitationModule org.briarproject.lifecycle.LifecycleModule - org.briarproject.sync.MessagingModule + org.briarproject.messaging.MessagingModule org.briarproject.plugins.AndroidPluginsModule + org.briarproject.sync.SyncModule org.briarproject.system.AndroidSystemModule org.briarproject.transport.TransportModule diff --git a/briar-core/src/org/briarproject/contact/ContactManagerImpl.java b/briar-core/src/org/briarproject/contact/ContactManagerImpl.java new file mode 100644 index 000000000..3a1648f16 --- /dev/null +++ b/briar-core/src/org/briarproject/contact/ContactManagerImpl.java @@ -0,0 +1,44 @@ +package org.briarproject.contact; + +import com.google.inject.Inject; + +import org.briarproject.api.contact.Contact; +import org.briarproject.api.contact.ContactId; +import org.briarproject.api.contact.ContactManager; +import org.briarproject.api.db.DatabaseComponent; +import org.briarproject.api.db.DbException; +import org.briarproject.api.identity.Author; +import org.briarproject.api.identity.AuthorId; + +import java.util.Collection; + +class ContactManagerImpl implements ContactManager { + + private final DatabaseComponent db; + + @Inject + ContactManagerImpl(DatabaseComponent db) { + this.db = db; + } + + @Override + public ContactId addContact(Author remote, AuthorId local) + throws DbException { + return db.addContact(remote, local); + } + + @Override + public Contact getContact(ContactId c) throws DbException { + return db.getContact(c); + } + + @Override + public Collection getContacts() throws DbException { + return db.getContacts(); + } + + @Override + public void removeContact(ContactId c) throws DbException { + db.removeContact(c); + } +} diff --git a/briar-core/src/org/briarproject/contact/ContactModule.java b/briar-core/src/org/briarproject/contact/ContactModule.java new file mode 100644 index 000000000..6bd786aa3 --- /dev/null +++ b/briar-core/src/org/briarproject/contact/ContactModule.java @@ -0,0 +1,13 @@ +package org.briarproject.contact; + +import com.google.inject.AbstractModule; + +import org.briarproject.api.contact.ContactManager; + +public class ContactModule extends AbstractModule { + + @Override + protected void configure() { + bind(ContactManager.class).to(ContactManagerImpl.class); + } +} diff --git a/briar-core/src/org/briarproject/forum/ForumManagerImpl.java b/briar-core/src/org/briarproject/forum/ForumManagerImpl.java new file mode 100644 index 000000000..06c902c98 --- /dev/null +++ b/briar-core/src/org/briarproject/forum/ForumManagerImpl.java @@ -0,0 +1,93 @@ +package org.briarproject.forum; + +import com.google.inject.Inject; + +import org.briarproject.api.contact.Contact; +import org.briarproject.api.contact.ContactId; +import org.briarproject.api.db.DatabaseComponent; +import org.briarproject.api.db.DbException; +import org.briarproject.api.forum.ForumManager; +import org.briarproject.api.sync.Group; +import org.briarproject.api.sync.GroupId; +import org.briarproject.api.sync.Message; +import org.briarproject.api.sync.MessageHeader; +import org.briarproject.api.sync.MessageId; + +import java.util.Collection; + +class ForumManagerImpl implements ForumManager { + + private final DatabaseComponent db; + + @Inject + ForumManagerImpl(DatabaseComponent db) { + this.db = db; + } + + @Override + public boolean addGroup(Group g) throws DbException { + return db.addGroup(g); + } + + @Override + public void addLocalMessage(Message m) throws DbException { + db.addLocalMessage(m); + } + + @Override + public Collection getAvailableGroups() throws DbException { + return db.getAvailableGroups(); + } + + @Override + public Group getGroup(GroupId g) throws DbException { + return db.getGroup(g); + } + + @Override + public Collection getGroups() throws DbException { + return db.getGroups(); + } + + @Override + public byte[] getMessageBody(MessageId m) throws DbException { + return db.getMessageBody(m); + } + + @Override + public Collection getMessageHeaders(GroupId g) + throws DbException { + return db.getMessageHeaders(g); + } + + @Override + public Collection getSubscribers(GroupId g) throws DbException { + return db.getSubscribers(g); + } + + @Override + public Collection getVisibility(GroupId g) throws DbException { + return db.getVisibility(g); + } + + @Override + public void removeGroup(Group g) throws DbException { + db.removeGroup(g); + } + + @Override + public void setReadFlag(MessageId m, boolean read) throws DbException { + db.setReadFlag(m, read); + } + + @Override + public void setVisibility(GroupId g, Collection visible) + throws DbException { + db.setVisibility(g, visible); + } + + @Override + public void setVisibleToAll(GroupId g, boolean all) throws DbException { + db.setVisibleToAll(g, all); + } +} diff --git a/briar-core/src/org/briarproject/forum/ForumModule.java b/briar-core/src/org/briarproject/forum/ForumModule.java new file mode 100644 index 000000000..0015457c1 --- /dev/null +++ b/briar-core/src/org/briarproject/forum/ForumModule.java @@ -0,0 +1,13 @@ +package org.briarproject.forum; + +import com.google.inject.AbstractModule; + +import org.briarproject.api.forum.ForumManager; + +public class ForumModule extends AbstractModule { + + @Override + protected void configure() { + bind(ForumManager.class).to(ForumManagerImpl.class); + } +} diff --git a/briar-core/src/org/briarproject/identity/IdentityManagerImpl.java b/briar-core/src/org/briarproject/identity/IdentityManagerImpl.java new file mode 100644 index 000000000..89e4f324d --- /dev/null +++ b/briar-core/src/org/briarproject/identity/IdentityManagerImpl.java @@ -0,0 +1,41 @@ +package org.briarproject.identity; + +import com.google.inject.Inject; + +import org.briarproject.api.db.DatabaseComponent; +import org.briarproject.api.db.DbException; +import org.briarproject.api.identity.AuthorId; +import org.briarproject.api.identity.IdentityManager; +import org.briarproject.api.identity.LocalAuthor; + +import java.util.Collection; + +class IdentityManagerImpl implements IdentityManager { + + private final DatabaseComponent db; + + @Inject + IdentityManagerImpl(DatabaseComponent db) { + this.db = db; + } + + @Override + public void addLocalAuthor(LocalAuthor a) throws DbException { + db.addLocalAuthor(a); + } + + @Override + public LocalAuthor getLocalAuthor(AuthorId a) throws DbException { + return db.getLocalAuthor(a); + } + + @Override + public Collection getLocalAuthors() throws DbException { + return db.getLocalAuthors(); + } + + @Override + public void removeLocalAuthor(AuthorId a) throws DbException { + db.removeLocalAuthor(a); + } +} diff --git a/briar-core/src/org/briarproject/identity/IdentityModule.java b/briar-core/src/org/briarproject/identity/IdentityModule.java new file mode 100644 index 000000000..98134d199 --- /dev/null +++ b/briar-core/src/org/briarproject/identity/IdentityModule.java @@ -0,0 +1,13 @@ +package org.briarproject.identity; + +import com.google.inject.AbstractModule; + +import org.briarproject.api.identity.IdentityManager; + +public class IdentityModule extends AbstractModule { + + @Override + protected void configure() { + bind(IdentityManager.class).to(IdentityManagerImpl.class); + } +} diff --git a/briar-core/src/org/briarproject/messaging/MessagingManagerImpl.java b/briar-core/src/org/briarproject/messaging/MessagingManagerImpl.java new file mode 100644 index 000000000..b3929a1ed --- /dev/null +++ b/briar-core/src/org/briarproject/messaging/MessagingManagerImpl.java @@ -0,0 +1,66 @@ +package org.briarproject.messaging; + +import com.google.inject.Inject; + +import org.briarproject.api.contact.ContactId; +import org.briarproject.api.db.DatabaseComponent; +import org.briarproject.api.db.DbException; +import org.briarproject.api.messaging.MessagingManager; +import org.briarproject.api.sync.Group; +import org.briarproject.api.sync.GroupId; +import org.briarproject.api.sync.Message; +import org.briarproject.api.sync.MessageHeader; +import org.briarproject.api.sync.MessageId; + +import java.util.Collection; + +class MessagingManagerImpl implements MessagingManager { + + private final DatabaseComponent db; + + @Inject + MessagingManagerImpl(DatabaseComponent db) { + this.db = db; + } + + @Override + public boolean addGroup(Group g) throws DbException { + return db.addGroup(g); + } + + @Override + public void addLocalMessage(Message m) throws DbException { + db.addLocalMessage(m); + } + + @Override + public Group getGroup(GroupId g) throws DbException { + return db.getGroup(g); + } + + @Override + public GroupId getInboxGroupId(ContactId c) throws DbException { + return db.getInboxGroupId(c); + } + + @Override + public Collection getInboxMessageHeaders(ContactId c) + throws DbException { + return db.getInboxMessageHeaders(c); + } + + @Override + public byte[] getMessageBody(MessageId m) throws DbException { + return db.getMessageBody(m); + } + + @Override + public void setInboxGroup(ContactId c, Group g) throws DbException { + db.setInboxGroup(c, g); + } + + @Override + public void setReadFlag(MessageId m, boolean read) throws DbException { + db.setReadFlag(m, read); + } +} diff --git a/briar-core/src/org/briarproject/messaging/MessagingModule.java b/briar-core/src/org/briarproject/messaging/MessagingModule.java new file mode 100644 index 000000000..762e9c76d --- /dev/null +++ b/briar-core/src/org/briarproject/messaging/MessagingModule.java @@ -0,0 +1,13 @@ +package org.briarproject.messaging; + +import com.google.inject.AbstractModule; + +import org.briarproject.api.messaging.MessagingManager; + +public class MessagingModule extends AbstractModule { + + @Override + protected void configure() { + bind(MessagingManager.class).to(MessagingManagerImpl.class); + } +} diff --git a/briar-core/src/org/briarproject/sync/MessagingModule.java b/briar-core/src/org/briarproject/sync/SyncModule.java similarity index 97% rename from briar-core/src/org/briarproject/sync/MessagingModule.java rename to briar-core/src/org/briarproject/sync/SyncModule.java index d73de1a7c..1caef5bf1 100644 --- a/briar-core/src/org/briarproject/sync/MessagingModule.java +++ b/briar-core/src/org/briarproject/sync/SyncModule.java @@ -19,7 +19,7 @@ import org.briarproject.api.sync.UnverifiedMessage; import javax.inject.Singleton; -public class MessagingModule extends AbstractModule { +public class SyncModule extends AbstractModule { @Override protected void configure() { diff --git a/briar-tests/src/org/briarproject/ProtocolIntegrationTest.java b/briar-tests/src/org/briarproject/ProtocolIntegrationTest.java index d942de487..807b04c18 100644 --- a/briar-tests/src/org/briarproject/ProtocolIntegrationTest.java +++ b/briar-tests/src/org/briarproject/ProtocolIntegrationTest.java @@ -34,7 +34,7 @@ import org.briarproject.crypto.CryptoModule; import org.briarproject.data.DataModule; import org.briarproject.db.DatabaseModule; import org.briarproject.event.EventModule; -import org.briarproject.sync.MessagingModule; +import org.briarproject.sync.SyncModule; import org.briarproject.transport.TransportModule; import org.junit.Test; @@ -72,7 +72,7 @@ public class ProtocolIntegrationTest extends BriarTestCase { Injector i = Guice.createInjector(new TestDatabaseModule(), new TestLifecycleModule(), new TestSystemModule(), new CryptoModule(), new DatabaseModule(), new EventModule(), - new MessagingModule(), new DataModule(), + new SyncModule(), new DataModule(), new TransportModule()); streamReaderFactory = i.getInstance(StreamReaderFactory.class); streamWriterFactory = i.getInstance(StreamWriterFactory.class); diff --git a/briar-tests/src/org/briarproject/sync/ConstantsTest.java b/briar-tests/src/org/briarproject/sync/ConstantsTest.java index c823206a4..00149a8a0 100644 --- a/briar-tests/src/org/briarproject/sync/ConstantsTest.java +++ b/briar-tests/src/org/briarproject/sync/ConstantsTest.java @@ -65,7 +65,7 @@ public class ConstantsTest extends BriarTestCase { Injector i = Guice.createInjector(new TestDatabaseModule(), new TestLifecycleModule(), new TestSystemModule(), new CryptoModule(), new DatabaseModule(), new EventModule(), - new org.briarproject.sync.MessagingModule(), new DataModule()); + new SyncModule(), new DataModule()); crypto = i.getInstance(CryptoComponent.class); groupFactory = i.getInstance(GroupFactory.class); authorFactory = i.getInstance(AuthorFactory.class); diff --git a/briar-tests/src/org/briarproject/sync/SimplexMessagingIntegrationTest.java b/briar-tests/src/org/briarproject/sync/SimplexMessagingIntegrationTest.java index 04db6db75..7cb2ed9b3 100644 --- a/briar-tests/src/org/briarproject/sync/SimplexMessagingIntegrationTest.java +++ b/briar-tests/src/org/briarproject/sync/SimplexMessagingIntegrationTest.java @@ -87,7 +87,7 @@ public class SimplexMessagingIntegrationTest extends BriarTestCase { return Guice.createInjector(new TestDatabaseModule(dir), new TestLifecycleModule(), new TestSystemModule(), new CryptoModule(), new DatabaseModule(), new EventModule(), - new org.briarproject.sync.MessagingModule(), new DataModule(), + new SyncModule(), new DataModule(), new TransportModule()); }