Commit Graph

7458 Commits

Author SHA1 Message Date
akwizgran 517aea3b1f Socket plugin that supports exchanging invitations by LAN multicast
(untested).
2011-10-30 20:50:55 +00:00
akwizgran 42ddfb444e Added a method to check which plugins support invitations. 2011-10-29 09:52:07 +01:00
akwizgran 70c7a9c077 Factored out non-Bluetooth-specific code. 2011-10-29 09:47:19 +01:00
akwizgran 4a9d700e61 Merge branch 'refs/heads/master' of ssh://akwizgran@briar.git.sourceforge.net/gitroot/briar/prototype 2011-10-28 16:48:34 +01:00
akwizgran d3060a3bd6 Class IDs may be in nested lists. Don't ask me why. 2011-10-28 16:46:51 +01:00
akwizgran 559cdfaeba Merged shared code in listener classes and made casts safe. 2011-10-28 15:48:30 +01:00
akwizgran 712d9b7698 Updated test to match changes to plugin. 2011-10-28 13:37:52 +01:00
akwizgran d2e1500ac1 Store the UUID in the local properties so it gets sent to contacts. 2011-10-28 13:17:17 +01:00
akwizgran 70c5d7ce75 Don't store the local address unless the device is discoverable. 2011-10-28 13:16:00 +01:00
akwizgran 40689b7e6e Avoid NoSuchElementException if the connection stalls. 2011-10-28 13:13:05 +01:00
akwizgran 0728f76933 Ignore case when comparing Bluetooth UUIDs. 2011-10-28 12:54:20 +01:00
akwizgran df125bdcd2 Ignore case when comparing Bluetooth UUIDs. 2011-10-28 12:37:16 +01:00
akwizgran 48d638746c Invitation API and two (untested) implementations. 2011-10-27 17:52:03 +01:00
akwizgran 59485fe392 Added comments for columns that may be null. 2011-10-26 18:05:49 +01:00
akwizgran 7d73f9604d Added a method for getting unread message counts for all groups. 2011-10-26 17:56:35 +01:00
akwizgran 6d91603bf7 Moved MessageHeader into DB component and added read/starred flags. 2011-10-26 17:07:09 +01:00
akwizgran 0f6b0e88c1 Added message flags: read/unread and starred/unstarred. 2011-10-26 16:32:30 +01:00
akwizgran b70b579fd6 Renamed locks in javadoc comments. 2011-10-26 15:49:35 +01:00
akwizgran 94722a9f2a Broadcast an event when an author's rating changes. 2011-10-26 15:40:38 +01:00
akwizgran 097d11f471 Exposed getMessageHeaders() through DatabaseComponent interface. 2011-10-26 15:18:02 +01:00
akwizgran d2bac9a4f8 Test and bugfix for getMessageHeaders(). 2011-10-26 14:52:18 +01:00
akwizgran 2628823db7 Added a method to get all message headers in a given group (untested). 2011-10-25 17:12:37 +01:00
akwizgran 995518c48b Upgraded H2 jar and removed workaround for Blob.getBytes() bug.
The H2 developers are amazing. :-)
2011-10-25 09:42:27 +01:00
akwizgran 9ec8feec78 Added a method for retrieving the message body from the DB. 2011-10-21 20:42:43 +01:00
akwizgran 1173e0a563 Increased sleep intervals to avoid a race. 2011-10-21 20:42:09 +01:00
akwizgran ef61eaa804 Separated MessageHeader interface from Message interface. 2011-10-21 18:42:27 +01:00
akwizgran f2d80825bc Separated the subject line from the message body. 2011-10-21 18:25:25 +01:00
akwizgran 4d23e14d89 Unit tests for subscription and transport timestamps. 2011-10-19 16:41:32 +01:00
akwizgran c828db2e95 Don't send subscription or transport updates unless an update is due.
An update is due if the information has changed since the last update,
or if no update has been sent for 12 hours (to ensure that lost
updates are eventually replaced).
2011-10-19 16:34:58 +01:00
akwizgran 93cd31fa2d Simplify Database methods, move logic to DatabaseComponent. 2011-10-19 15:54:56 +01:00
akwizgran f18ddfe55f Variables protected by a monitor don't need to be volatile. 2011-10-19 12:52:02 +01:00
akwizgran 8713e81887 Use ZERO() to initialise columns where appropriate. 2011-10-19 12:48:34 +01:00
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