Commit Graph

155 Commits

Author SHA1 Message Date
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 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 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
akwizgran a73d9d05f2 Added getMaxLatency() method to transport plugins. 2013-02-01 20:19:23 +00:00
akwizgran 14177e51f6 Renamed some variables to match renamed classes. 2013-02-01 19:44:43 +00:00
akwizgran 0229d94531 Removed unnecessary fake transport properties from integration test. 2013-02-01 18:11:20 +00:00
akwizgran 520b6da5ac Exposed message handling methods through DatabaseComponent interface. 2013-01-30 18:23:53 +00:00
akwizgran 9a78071bde Refactoring: renamed package 'protocol' -> 'messaging'. 2013-01-30 17:48:43 +00:00
akwizgran c1d2891763 Updated simplex and duplex connections to handle the new packet types. 2013-01-30 15:35:35 +00:00
akwizgran b4818228c4 Fixed remaining unit tests, refactored tests for refactored classes. 2013-01-30 14:56:28 +00:00
akwizgran e379f11698 Fixed existing unit tests for DatabaseComponentImpl, and two bugs. 2013-01-30 14:39:13 +00:00
akwizgran 33d0f19f26 Fixed existing unit tests for H2Database; new tests are needed. 2013-01-29 16:43:41 +00:00
akwizgran 7ecda94340 Renamed some methods, fixed SQL typo bugs in JdbcDatabase. 2013-01-29 16:43:13 +00:00
akwizgran 61a6931643 Renamed ContactTransport -> Endpoint, added more database exceptions. 2013-01-29 15:24:34 +00:00
akwizgran 3e1c41c62f Removed the serialisation reader's internal array of struct readers. 2013-01-28 23:37:44 +00:00
akwizgran 9b98d3c7d6 Added new database events and simplified database locking. 2013-01-25 16:27:50 +00:00
akwizgran 64bf1fbbb1 Part 1 of a major BMP and database refactoring. Tests are broken!
The old logic for selecting when to send subscription and transport
updates has been removed and not yet replaced. Subscription times have
been removed from subscription updates. The database expiry time has
been remove from subscription updates and will later get its own update
packet. Transport updates have been broken up into one update per
transport. Acks for subscription and transport updates have been added.
2013-01-25 15:38:37 +00:00
akwizgran b8247968b6 Code cleanup: import static. 2013-01-17 16:56:58 +00:00
akwizgran 77a5fea5c8 Code and API cleanup for the database component. 2013-01-17 16:28:09 +00:00
akwizgran 50ad1f486e Removed batches from BMP. Messages are now sent and acked individually. 2013-01-16 22:56:03 +00:00
akwizgran 1d5928be46 Fixed a long-broken test (the return type of a method had changed). 2013-01-03 21:57:03 +00:00
akwizgran 5b02fe96d1 Disable shuffling of contacts when unit testing the modem plugin. 2013-01-03 21:47:16 +00:00
akwizgran 2d6a9fa310 Unit tests for ModemPlugin. 2012-12-16 02:05:39 +00:00
akwizgran b090a12b7f Accept phone numbers starting with +. 2012-12-15 22:24:51 +00:00
akwizgran 6dd17a22eb Converted Group from an interface to an immutable class. 2012-12-15 19:42:00 +00:00
akwizgran ac0420d276 Unit tests and bug fixes for international dialling. 2012-12-15 16:36:37 +00:00
akwizgran 3b3ab6fd1a Empty transport configs/properties should be treated the same as nulls. 2012-12-15 16:02:35 +00:00
akwizgran 3e2e7286fe Wrapped System.currentTimeMillis() and Thread.sleep() for testability. 2012-12-15 04:58:35 +00:00
akwizgran 5876583f7c Moved reliability layer into its own package. 2012-12-15 02:07:46 +00:00
akwizgran f5628e5581 Use Guice rather than reflection to load plugins.
This allows different plugins to have different dependencies without
cluttering the plugin factory API.
2012-12-15 01:16:48 +00:00
akwizgran 47749c3c0d Converted ReliabilityLayer into an interface for better testability. 2012-12-14 21:57:50 +00:00
akwizgran 15ab5be476 Equals method must be symmetric and transitive. 2012-12-09 20:29:29 +00:00
akwizgran cdeefbbc5f Wait 60 seconds for the server to hang up. 2012-12-07 16:21:31 +00:00
akwizgran ef8841e712 Non-JUnit tests for detecting when the other end hangs up. 2012-12-07 16:10:58 +00:00
akwizgran bfbcdfa5a7 Don't send and receive invitations unless the plugin supports it. 2012-12-06 16:13:54 +00:00
akwizgran 78953289f7 Flush the output stream after writing. 2012-12-06 15:44:58 +00:00
akwizgran 584f7de0ab Wait a long time for a connection (modems take a while to connect). 2012-12-06 15:27:26 +00:00
akwizgran aec43d6de7 Enabled logging in non-JUnit modem tests. 2012-12-06 13:36:10 +00:00
akwizgran 51a4f2fd62 Updated non-JUnit plugin tests and added tests for the modem plugin. 2012-12-06 13:10:14 +00:00