Commit Graph

3524 Commits

Author SHA1 Message Date
akwizgran fa3183b46a Added convenience method for waiting for BriarService to start. 2013-03-01 22:46:49 +00:00
akwizgran 71e1dd9acb Changed database cleaning constants to suit smaller devices. 2013-03-01 22:13:08 +00:00
akwizgran 1ce1cf6f63 Added conversation list screen, minor tweaks to contact list screen. 2013-03-01 20:59:53 +00:00
akwizgran 93beb6709c Fixed an ambiguous column name in a SQL join. 2013-03-01 20:40:41 +00:00
akwizgran 7ed85c62c3 Fixed inconsistent locking in database.
Previously, when table A had a foreign key pointing to table B, we got
read locks on A and B to read A, a write lock on A and a read lock on
B to update A, and a write lock on B to update B (but this wasn't
applied consistently). Now we get a read lock on A to read A, a write
lock on A to update A, and write locks on A and B to update B. The
difference is small in practice, but clarifying the rules has helped to
catch some bugs.
2013-02-28 17:00:55 +00:00
akwizgran 43c8cfa248 Explanatory names for MessageFactory methods. 2013-02-28 13:08:35 +00:00
akwizgran bfd4ee5e9f Added columns to the DB to support retrieval of message headers. 2013-02-28 12:49:48 +00:00
akwizgran 88aea1bb72 Added buttons to the home screen, committed resources to git. 2013-02-27 23:13:50 +00:00
akwizgran 656c53cf00 Converted the home screen into a grid view. 2013-02-27 22:35:27 +00:00
akwizgran 06d32814ed Show connection indicator and last connection time in contact list. 2013-02-27 19:15:51 +00:00
akwizgran 330889a439 Fixed an ambiguous column name and erroneous javadoc comments. 2013-02-27 18:09:49 +00:00
akwizgran 1e8a8d985d Added lastConnected timestamp to Contact, for display in contact list. 2013-02-27 15:12:01 +00:00
akwizgran b4de633823 Removed UNSIGNED from column declarations. 2013-02-27 14:48:55 +00:00
akwizgran 8975cdb717 Basic support for displaying connection status of contacts. 2013-02-22 18:16:16 +00:00
akwizgran 75cab35864 Added ConnectionListener interface for contact list and supporting code. 2013-02-22 17:36:37 +00:00
akwizgran f0e9bcc164 Moved contact list into its own activity, hooked up quit buttons. 2013-02-22 15:41:33 +00:00
akwizgran 1da4079a81 Call System.exit() to prevent shut-down components from being restarted.
Perhaps a better solution would be to make all components restartable,
but that's difficult as they may have entered error states.
2013-02-19 23:10:37 +00:00
akwizgran 2050e11415 Added a contact list and quit button to HelloWorldActivity. 2013-02-19 19:24:12 +00:00
akwizgran 35bbe1a678 Added startup and shutdown methods to BriarService. 2013-02-19 19:23:38 +00:00
akwizgran e99d42e0ac Closing the socket on shutdown sometimes causes a crash; don't close it. 2013-02-19 19:18:53 +00:00
akwizgran 0d2bc9ed7b Removed static injection hack, moved boilerplate into a superclass. 2013-02-19 17:36:51 +00:00
akwizgran 020e4df8d9 Added boilerplate bundle encryption code to HelloWorldActivity.
It would be nice to be able to put this code in a superclass, since in
the case of an activity like this it only deals with superclass state.
2013-02-19 00:54:21 +00:00
akwizgran d136964bea Fixed a logging message in the bundle decrypting code. 2013-02-19 00:43:36 +00:00
akwizgran 9215537d80 Refactored bundle encryption code. 2013-02-19 00:41:50 +00:00
akwizgran f33348ff98 Use static injection to allow superclass state to be encrypted.
Mutable static fields should be avoided, but this is the only way to
make the bundle encrypter available before calling
RoboActivity.onCreate(), which needs to be passed the decrypted state.
2013-02-19 00:11:10 +00:00
akwizgran 51db9ce1fd Encrypt bundles in case the OS writes them to unencrypted storage.
Only the bundle contents created by Briar classes are encrypted.
2013-02-18 18:56:00 +00:00
akwizgran 49e6113e5d Allow binding to the local BriarService instance. 2013-02-18 18:54:07 +00:00
akwizgran 00c0729f10 Add the new contact to the DB when the invitation process completes. 2013-02-18 17:47:34 +00:00
akwizgran b8cf58c426 Key manager should listen for TransportRemovedEvent and erase keys. 2013-02-18 15:55:41 +00:00
akwizgran d1fedaed57 Replaced InvitationManager with a generic ReferenceManager for Android. 2013-02-14 13:04:51 +00:00
akwizgran 4307d516a6 Use net.sf.briar namespace for all bundle keys. 2013-02-12 20:33:18 +00:00
akwizgran 6c5cba2768 Fixed a typo. 2013-02-12 20:22:05 +00:00
akwizgran 9bf96d4c5a Converted MessageHeader from an interface to a value class. 2013-02-12 17:42:58 +00:00
akwizgran 96f8e49d64 Added names to contacts, created Contact class in API. 2013-02-12 17:38:49 +00:00
akwizgran 79fc630ab7 Use mocks rather than real plugins for better coverage of error cases. 2013-02-12 16:25:08 +00:00
akwizgran d18fc1330b Plugin manager must add transports to the DB before activating them. 2013-02-12 16:04:22 +00:00
akwizgran d3a8dae583 Set android:allowBackup to false, updated target API version to 17. 2013-02-12 15:54:36 +00:00
akwizgran e6de8efed2 Show an ongoing notification so the background service isn't killed. 2013-02-12 15:43:18 +00:00
akwizgran e3c90f56ed Updated Roboguice module list. 2013-02-12 14:20:19 +00:00
akwizgran e0f6948bc4 Fixed injection problems with plugin and reliability modules. 2013-02-12 14:18:43 +00:00
akwizgran 78d6100262 Limit the number of subscriptions per user.
This limit is necessary to limit the size of subscription update
packets; it can be lifted when incremental subscription updates are
implemented.
2013-02-07 18:13:58 +00:00
akwizgran f4675c3edd Added more DatabaseComponent unit tests, tightened up existing tests. 2013-02-07 00:29:30 +00:00
akwizgran 3af077a4d8 Refactored exponential backoff code out of JdbcDatabase and added tests. 2013-02-06 23:51:23 +00:00
akwizgran 379d6ed220 Retransmission with exponential backoff (untested). 2013-02-06 20:07:08 +00:00
akwizgran 4c5657321d Retransmission without backoff for messages and updates. 2013-02-06 19:06:14 +00:00
akwizgran bec8543bfa Replaced Collections.singletonList() with more concise Arrays.asList(). 2013-02-06 15:17:47 +00:00
akwizgran 9558bd88df Retransmit messages based on maximum latency of transport. 2013-02-06 15:11:55 +00:00
akwizgran 5150737476 Replaced the Status enum with a seen flag and an expiry time. 2013-02-04 17:48:30 +00:00
akwizgran 30a0269652 Code cleanup: import static, use == to compare enum values. 2013-02-01 22:40:36 +00:00
akwizgran adff37481f Code cleanup: don't use L for long constants unless it's necessary. 2013-02-01 20:40:57 +00:00