Commit Graph

3267 Commits

Author SHA1 Message Date
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
akwizgran f23e89c80e Outgoing connection test. 2011-10-06 12:59:27 +01:00
akwizgran e7b404b7b3 Check that the socket is passed to the callback. 2011-10-06 12:15:55 +01:00
akwizgran 5bc9baff95 Accept connections on the local socket. 2011-10-06 12:00:44 +01:00
akwizgran 1ee765a052 Resolve the address before binding. 2011-10-06 11:31:09 +01:00
akwizgran f8ca06f79d Changed callback arguments to varargs and renamed a method. 2011-10-06 11:13:19 +01:00
akwizgran 11b571fd8f Moved locking to the superclass to simplify subclasses. 2011-10-06 09:34:15 +01:00
akwizgran ffe10e1502 Don't call the callback after stop() has been called. 2011-10-06 09:25:50 +01:00
akwizgran 6737e4ddfb Merged common methods of BatchTransportPlugin and
StreamTransportPlugin into a superclass.
2011-10-06 09:22:56 +01:00
akwizgran b54668c50b Renamed InvalidTransportException -> InvalidPropertiesException. 2011-10-06 09:18:13 +01:00