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
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