Commit Graph

838 Commits

Author SHA1 Message Date
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
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
48cc55c43b Upgraded Silvertunnel to version 0.15. 2013-02-01 18:05:29 +00:00
akwizgran
3356a22c81 Check for space before writing packets to simplex connections. 2013-01-31 13:13:09 +00:00
akwizgran
3e9d6113a2 Use the multi-threading option with H2. 2013-01-31 12:22:50 +00:00
akwizgran
43e1014d6c Use database events to trigger transmission of packets. 2013-01-30 20:28:52 +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
d7a7e9ab96 Converted UnverifiedMessage from an interface to a value class. 2013-01-30 17:37:18 +00:00
akwizgran
c1d2891763 Updated simplex and duplex connections to handle the new packet types. 2013-01-30 15:35:35 +00:00
akwizgran
f5ec5b9569 Fixed an ambiguous column name in getRetentionUpdate(). 2013-01-30 15:35:08 +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
fe153b0815 Merged flags table into messages table (they now use the same lock). 2013-01-29 17:51:54 +00:00
akwizgran
ea339e76d6 Added getVisibleSubscriptions() method for managing group visibility. 2013-01-29 17:09:06 +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
54067763a6 Cleaned up imports. 2013-01-29 14:46:19 +00:00
akwizgran
81397ef1c2 Added database events for retention updates. 2013-01-29 14:45:05 +00:00
akwizgran
c3c349970b Use 'retention' rather than 'expiry' to describe DB's retention period.
This will avoid a name clash when retransmission is implemented.
2013-01-29 14:33:43 +00:00
akwizgran
3e1c41c62f Removed the serialisation reader's internal array of struct readers. 2013-01-28 23:37:44 +00:00
akwizgran
42dd7f238c Send newest messages first.
This removes the need to send a start time for each subscription; new
subscribers will receive old messages if and only if there's bandwidth.
2013-01-28 23:24:35 +00:00
akwizgran
2ebbe0eb2a Don't store received messages with timestamps in the future. 2013-01-28 23:20:25 +00:00
akwizgran
2c27a0251a Database methods for expiry updates and expiry acks. 2013-01-28 23:12:42 +00:00
akwizgran
d0904d8f1b Merged small reader classes into ProtocolReaderImpl.
The structure of the reader now resembles that of the writer, which
should make it easier to spot discrepancies.
2013-01-28 21:00:59 +00:00
akwizgran
0141365963 Created expiry update and expiry ack packets for BMP. 2013-01-28 20:43:43 +00:00
akwizgran
7a4549a699 Applied a patch from the Silvertunnel forums for connection issues. 2013-01-28 20:13:48 +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
13cad40004 Removed obsolete .gitignore file. 2013-01-14 18:17:52 +00:00
akwizgran
4b49e0742c Added GPLv3 license file. 2013-01-10 16:56:21 +00:00