diff --git a/briar-android/res/values/roboguice.xml b/briar-android/res/values/roboguice.xml index 92220cc84333ce1abcdf3a28cdc01ec1cfcaeded..7f33cf6d5cbccb03cc89a9b36e70c2c06d6a34c5 100644 --- a/briar-android/res/values/roboguice.xml +++ b/briar-android/res/values/roboguice.xml @@ -2,14 +2,18 @@ <resources> <string-array name="roboguice_modules"> <item>org.briarproject.android.AndroidModule</item> + <item>org.briarproject.contact.ContactModule</item> <item>org.briarproject.crypto.CryptoModule</item> <item>org.briarproject.data.DataModule</item> <item>org.briarproject.db.DatabaseModule</item> <item>org.briarproject.event.EventModule</item> + <item>org.briarproject.forum.ForumModule</item> + <item>org.briarproject.identity.IdentityModule</item> <item>org.briarproject.invitation.InvitationModule</item> <item>org.briarproject.lifecycle.LifecycleModule</item> - <item>org.briarproject.sync.MessagingModule</item> + <item>org.briarproject.messaging.MessagingModule</item> <item>org.briarproject.plugins.AndroidPluginsModule</item> + <item>org.briarproject.sync.SyncModule</item> <item>org.briarproject.system.AndroidSystemModule</item> <item>org.briarproject.transport.TransportModule</item> </string-array> 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 0000000000000000000000000000000000000000..3a1648f16cc3d875e198cb81178b50e9911e8960 --- /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<Contact> 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 0000000000000000000000000000000000000000..6bd786aa3b63715bef22dea8948ab4787a32aeeb --- /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 0000000000000000000000000000000000000000..06c902c98a13d49935dec12bcd7658faf2946f36 --- /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<Group> getAvailableGroups() throws DbException { + return db.getAvailableGroups(); + } + + @Override + public Group getGroup(GroupId g) throws DbException { + return db.getGroup(g); + } + + @Override + public Collection<Group> getGroups() throws DbException { + return db.getGroups(); + } + + @Override + public byte[] getMessageBody(MessageId m) throws DbException { + return db.getMessageBody(m); + } + + @Override + public Collection<MessageHeader> getMessageHeaders(GroupId g) + throws DbException { + return db.getMessageHeaders(g); + } + + @Override + public Collection<Contact> getSubscribers(GroupId g) throws DbException { + return db.getSubscribers(g); + } + + @Override + public Collection<ContactId> 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<ContactId> 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 0000000000000000000000000000000000000000..0015457c1b1ee5320d813b80ea08c43cc4d7b940 --- /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 0000000000000000000000000000000000000000..89e4f324d31ee6c35106e14c13553d413bd815e9 --- /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<LocalAuthor> 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 0000000000000000000000000000000000000000..98134d1992aa5edabaa208719053648dca3fc83b --- /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 0000000000000000000000000000000000000000..b3929a1ed79085d3c226a00c3e83e16e47633ff8 --- /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<MessageHeader> 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 0000000000000000000000000000000000000000..762e9c76dc5037ecf82caad660554fd2062b913b --- /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 d73de1a7c5943be8c1de0033cea5d457ce8fb7f5..1caef5bf1ff92c78c0cfaf8bb2ba0b281f9ad853 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 d942de487f027352a100676f0242e6d1a19b77c0..807b04c185444162b03a2d81189e346cd2079695 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 c823206a4901ea1e75aa29d09729217ada628b08..00149a8a012d92d23f63ec10acf89923567b90f2 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 04db6db752ce5b9aa1e51fbd24dafce344cb857e..7cb2ed9b351a2f0be7db32c5cddc6457cb7ecf0c 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()); }