Commit Graph

574 Commits

Author SHA1 Message Date
akwizgran
066285b86a New polling logic for Tor. #250
Poll for outgoing connections each time the network is enabled, then disable polling once our hidden service descriptor has been published.
2016-02-25 10:10:57 +00:00
akwizgran
fee4beae63 Merge branch '252-lan-polling' into 'master'
New polling logic for LAN. #252

Same approach as !104. Modified the poller to cancel any scheduled poll when pollNow() is called and randomise the next polling interval so plugins that call pollNow() at the same time don't end up polling in sync.

Depends on !104. Fixes #252.

See merge request !105
2016-02-24 20:11:54 +00:00
akwizgran
d829d4711b Merge branch '251-bluetooth-polling' into 'master'
New polling logic for Bluetooth. #251

Increase the polling interval exponentially each time polling is unsuccessful, up to a maximum of 60 minutes. The interval is reset to 2 minutes whenever a connection is made and whenever Bluetooth is re-enabled.

This should reduce battery usage when there are no contacts nearby.

Fixes #251.

See merge request !104
2016-02-24 20:08:05 +00:00
akwizgran
681ec080e1 Randomise next polling interval after pollNow(). 2016-02-22 13:25:07 +00:00
akwizgran
5ce8927477 New polling logic for LAN (and WAN). #252
Same exponential backoff approach as Bluetooth.
2016-02-22 13:25:07 +00:00
akwizgran
c081c08ff5 New polling logic for Bluetooth. #251
The polling interval increases exponentially each time polling is unsuccessful, up to a maximum of 60 minutes. The interval is reset to 2 minutes whenever a connection is made and whenever Bluetooth is re-enabled.
2016-02-22 13:21:05 +00:00
akwizgran
247ee7eba0 Unit tests for TransportKeyManager. 2016-02-19 13:22:04 +00:00
akwizgran
8d03496068 Don't reschedule the same TimerTask. #254 2016-02-19 13:22:03 +00:00
akwizgran
a774b3419a Merge branch '117-bytes-comparator' into 'master'
Move UniqueId comparator to Bytes for reuse



See merge request !107
2016-02-19 12:19:35 +00:00
akwizgran
8a20f330be Broadcast status event when active contact is added. 2016-02-19 12:10:44 +00:00
str4d
5a6ab9bb96 Made UniqueId a subclass of Bytes. 2016-02-19 11:55:31 +00:00
akwizgran
682355fc37 Don't allow outgoing streams to inactive contacts. 2016-02-18 10:29:46 +00:00
akwizgran
a6baa5821e Added active flag to contacts. 2016-02-17 18:10:52 +00:00
akwizgran
6b76b75d08 More efficient database joins.
Don't keep message status rows for groups that are invisible to the contact - this avoids the need to join the groupVisibilities table when selecting messages to offer or send. Add or remove status rows when group visibility changes.
2016-02-17 17:24:44 +00:00
akwizgran
00e59613c0 Call validation hooks after storing message & metadata. 2016-02-17 16:51:44 +00:00
akwizgran
9f8baab60f Code cleanup. 2016-02-11 16:26:23 +00:00
akwizgran
074892b677 StorageStatus is no longer needed. 2016-02-11 16:26:23 +00:00
akwizgran
6505db58e6 Contact and identity managers don't need to be services. 2016-02-11 16:26:22 +00:00
akwizgran
146dac056d Broadcast events after committing transactions. 2016-02-11 16:26:22 +00:00
akwizgran
de8cc50fb4 Moved transactions out of database component. 2016-02-11 16:26:19 +00:00
akwizgran
ef2b2b9710 Removed unneeded visibility methods. 2016-02-11 16:21:53 +00:00
akwizgran
3fa1bbe33e Expose transactions through DatabaseComponent interface. 2016-02-11 16:21:53 +00:00
akwizgran
2460e1feb0 Moved author classes to identity package. 2016-02-11 16:21:52 +00:00
akwizgran
675ce4bfef Removed direct calls to DB's contact/identity methods. 2016-02-11 16:21:52 +00:00
akwizgran
623707af0f Removed database locking. 2016-02-11 16:21:52 +00:00
akwizgran
0c392e8b78 Replaced PacketWriter methods with a constant. 2016-02-11 16:21:26 +00:00
akwizgran
29b67d2e03 Merge branch 'forum-sharing-hooks' into 'master'
Use message validation hook in forum sharing client

This patch moves the forum sharing client's update handling from an event handler to a hook to ensure the update is handled even if it arrives just before shutdown.

See merge request !99
2016-02-11 12:44:23 +00:00
akwizgran
bb11ebd5bd Use message validation hook in forum sharing client. 2016-02-10 14:47:25 +00:00
akwizgran
a91d500263 Added method for deleting metadata. 2016-02-10 14:01:55 +00:00
akwizgran
00275e260f Allow messages to be deleted. 2016-02-10 14:01:55 +00:00
akwizgran
18db17bf5b Moved subscription updates to the client layer. 2016-02-10 10:47:30 +00:00
akwizgran
54272c8836 MessageFactory never throws IOException. 2016-02-10 10:47:29 +00:00
akwizgran
225d0ebeef DB interface cleanup, removed unnecessary exceptions. 2016-02-10 10:47:29 +00:00
akwizgran
3837efca6b Updated group-related events and exceptions. 2016-02-10 10:47:26 +00:00
akwizgran
9d537dce00 Removed contact subscriptions from database. 2016-02-10 10:46:41 +00:00
akwizgran
9fdc510843 Removed SubscriptionUpdate and SubscriptionAck. 2016-02-10 10:46:41 +00:00
Torsten Grote
d0ab16de2d Merge branch 'merge-settings' into 'master'
Fix a couple of bugs in settings

1. SettingsFragment wasn't receiving events because it extended BaseFragment rather than BaseEventFragment
2. Removed broken logic for deciding whether to broadcast a SettingsUpdatedEvent
3. Added the namespace to SettingsUpdatedEvent so listeners can decide whether to react

See merge request !97
2016-02-09 16:55:42 +00:00
Torsten Grote
b1cb39e88c Merge branch 'validation-hooks' into 'master'
Run hooks when messages are validated

This patch allows clients to respond to messages reliably. Like the hooks for adding/removing contacts/identities, these hooks may be run more than once - that will be fixed when we have client-layer transactions.

See merge request !95
2016-02-09 16:48:49 +00:00
akwizgran
3d948ed461 Don't broadcast an event unless settings have changed. 2016-02-08 11:17:45 +00:00
akwizgran
bdc17dfc8e Fixed a couple of bugs in settings. 2016-02-05 18:22:37 +00:00
akwizgran
4decdbf3e6 Giant whitespace-only indentation patch. 2016-02-05 14:54:17 +00:00
akwizgran
741571bdb8 Run hooks when messages are validated. 2016-02-05 12:08:48 +00:00
akwizgran
9e1000c1b3 Store transport properties received by other means. 2016-02-03 16:03:44 +00:00
akwizgran
3697fc6eb1 Allow different identities to have the same contact. 2016-02-02 17:00:54 +00:00
akwizgran
1f18aae0f1 Merge branch '235-transport-key-manager-deadlock' into 'master'
Avoid potential deadlock in TransportKeyManager. #235

See rambling description on the ticket and in the architecture channel...

Fixes #235.

See merge request !79
2016-02-02 15:35:28 +00:00
akwizgran
933eee1826 Merge branch '117-bqp-crypto' into 'master'
BQP crypto

This implements the `CryptoComponent` methods necessary for BQP.

Part of #117.

See merge request !88
2016-02-02 15:34:26 +00:00
akwizgran
86a814786a Merge branch 'remove-old-build-files' into 'master'
Remove Ant build files and Eclipse project files.

No longer needed for building or testing, and a pain to maintain.

See merge request !87
2016-02-02 10:48:24 +00:00
str4d
c822623677 Migrate Bluetooth protocol to BQP's master secret derivation 2016-02-02 02:45:49 +00:00
str4d
77e4ec381a Implement BQP crypto 2016-02-02 02:45:49 +00:00
str4d
4d7a23779a Rename crypto methods and constants for Bluetooth key agreement 2016-02-02 02:45:49 +00:00