akwizgran
dbdbb1d8d4
Never reuse contact IDs.
2011-10-19 12:43:44 +01:00
akwizgran
c8b2cc38de
Record when the transports and subscriptions visible to each contact
...
were last modified.
In future this will be used to determine when to send updates.
2011-10-18 17:32:32 +01:00
akwizgran
d7a417f36d
Validate the decrypted IV before creating a reader/writer.
2011-10-18 15:58:10 +01:00
akwizgran
2f457162a5
Attach the affected contact IDs to subscription update events.
2011-10-17 23:24:23 +01:00
akwizgran
ec56b12384
Converted database events from an enum to classes to allow them to
...
carry data.
2011-10-17 22:47:38 +01:00
akwizgran
89001e4c91
Double-check the initiator flag and transport ID of incoming
...
connections, and invert the flag for the responder's side.
2011-10-15 14:15:25 +01:00
akwizgran
2618fea0eb
Guice module for stream transport connections.
2011-10-14 22:50:34 +01:00
akwizgran
e214c40b11
Code cleanup and comments.
2011-10-14 22:48:16 +01:00
akwizgran
0ef1fcb686
De-uglified some code and moved two API classes.
2011-10-14 21:49:58 +01:00
akwizgran
cb06ebc5d2
Locking.
2011-10-14 21:37:55 +01:00
akwizgran
0d11553134
StreamConnectionFactory and ConnectionDispatcherImpl (untested).
2011-10-14 21:07:49 +01:00
akwizgran
718bd8c540
Moved DB accesses outside the lock.
2011-10-14 20:07:37 +01:00
akwizgran
8ece8f3243
First stab at the StreamConnection state machine. Needs work.
2011-10-14 19:50:17 +01:00
akwizgran
bd91e7ebf3
Renamed a DB event.
2011-10-14 19:49:47 +01:00
akwizgran
e00e12d473
Call the listeners if a new ack might need to be sent.
2011-10-14 18:29:14 +01:00
akwizgran
d48c7b6900
Converted {Incoming,Outgoing}BatchConnection into Runnables.
...
Also changed the dispose() method of readers/writers/connections to
swallow any exceptions that occur, since the caller can't do anything
except log them.
2011-10-14 16:14:29 +01:00
akwizgran
55182528cf
Q: What does the plugin manager do? A: It manages plugins.
2011-10-14 14:49:29 +01:00
akwizgran
d54ca67fe9
Tidied up synchronization.
2011-10-13 13:08:54 +01:00
akwizgran
aabe72bfd7
Plugin factories.
2011-10-12 17:26:05 +01:00
akwizgran
64e2d7bca9
Refactoring: shorter class names.
2011-10-12 17:25:37 +01:00
akwizgran
c5d9d9fa64
Minor concurrency cleanups.
2011-10-12 17:11:31 +01:00
akwizgran
3a07d1b882
Plugins don't need their own copies of configs and properties.
2011-10-12 16:52:39 +01:00
akwizgran
631f4e74b5
Nudge the database API in the direction of sanity.
2011-10-11 19:08:10 +01:00
akwizgran
a49a95347f
Use dedicated classes for transport properties and configs.
2011-10-11 17:28:47 +01:00
akwizgran
68b82ae826
Retrieve all remote transports from the DB in a single call.
2011-10-10 22:35:46 +01:00
akwizgran
4059fbf863
Moved plugin API from transport package to plugins package and merged
...
transport subpackages.
2011-10-10 16:18:48 +01:00
akwizgran
125ae1b640
Always call the callback outside the plugin's lock.
2011-10-08 13:13:28 +01:00
akwizgran
50e5c51d77
Removed an unused field.
2011-10-08 12:48:07 +01:00
akwizgran
5f40015ec2
Moved callback initialisation from start() to constructor so it can be
...
accessed outside the lock.
2011-10-08 12:46:35 +01:00
akwizgran
7eaefd97cb
Added missing Override annotations.
2011-10-08 12:45:49 +01:00
akwizgran
a3a5ebc14f
Removed unused exceptions. Also disabled output for ant tests.
2011-10-08 12:27:13 +01:00
akwizgran
4b1ffbe85b
Logging for plugins.
2011-10-07 13:59:19 +01:00
akwizgran
831cc42ddf
Merge branch 'refs/heads/master' of ssh://akwizgran@briar.git.sourceforge.net/gitroot/briar/prototype
2011-10-07 13:38:31 +01:00
akwizgran
56c07a8d98
Tests for the Bluetooth plugin.
2011-10-07 13:36:53 +01:00
akwizgran
a9b1a9123b
Use discovery rather than hardcoded URLs (which don't work).
...
Two devices that aren't discoverable won't be able to
communicate. (Likely to affect Linux devices, since changing
discoverability requires root on Linux.)
2011-10-07 13:36:24 +01:00
akwizgran
f41dbd0836
Use discovery rather than hardcoded URLs (which don't work).
...
Two devices that aren't discoverable won't be able to
communicate. (Likely to affect Linux devices, since changing
discoverability requires root on Linux.)
2011-10-07 13:19:00 +01:00
akwizgran
ea6beac011
Plugin refactoring.
2011-10-07 13:17:13 +01:00
akwizgran
a37186d574
Reverted to Bluecove 2.1.0 because discovery wasn't working on Linux.
2011-10-07 12:12:12 +01:00
akwizgran
3364604d03
Removed unused return value.
2011-10-07 11:29:01 +01:00
akwizgran
196c564d11
Upgraded Bluecove to 2.1.1 for Linux support without libbluetooth.
2011-10-07 00:09:07 +01:00
akwizgran
16c9bf7079
Unit test refactoring.
2011-10-07 00:08:32 +01:00
akwizgran
8fa77b57da
Bluetooth plugin (untested).
2011-10-06 19:33:12 +01:00
akwizgran
6d68fa5c4a
Check whether the socket has been set to null due to a failed
...
re-binding.
2011-10-06 19:32:55 +01:00
akwizgran
c08f6c4d1e
Merged transports' finish() and dispose() methods.
2011-10-06 19:00:33 +01:00
akwizgran
07d6715881
Added Bluetooth jars.
2011-10-06 18:43:43 +01:00
akwizgran
7a994114ff
Synchronize access to superclass members.
2011-10-06 18:16:08 +01:00
akwizgran
42e586abc4
Merged code from FilePlugin and SocketPlugin into a superclass.
2011-10-06 18:07:58 +01:00
akwizgran
3e522c81fa
Plugins should not modify their properties or configs.
2011-10-06 17:58:08 +01:00
akwizgran
8468b84c54
Reduced visibility of methods where possible.
2011-10-06 17:53:31 +01:00
akwizgran
bb9f03f1e8
Close and reopen the socket if necessary when the properties change.
2011-10-06 17:39:51 +01:00