Commit Graph

58 Commits

Author SHA1 Message Date
akwizgran 912ba394c5 Refactored FileUtils.
Removed methods that are no longer needed for Java 6, moved the remaining method into the utils directory.
2015-12-10 15:58:52 +00:00
Ernir Erlingsson a5fd7ff9dc Added dependency injections for FileUtils and removed redundant code 2015-12-10 11:07:10 +01:00
Ernir Erlingsson 2a61fa94d1 modified .gitignore and removed *.iml from git 2015-12-09 00:33:22 +01:00
akwizgran 061479dd68 Set source and target version to Java 6 in subprojects. 2015-12-04 10:12:01 +00:00
akwizgran 8529c976c2 Renamed a bunch of lock variables.
"synchLock" will become confusing when we have lots of objects with "sync" in the name.
2015-12-03 16:39:53 +00:00
akwizgran 7bc08b2de7 Updated Gradle wrapper. 2015-12-03 12:10:36 +00:00
akwizgran 2d346f7b73 Fixed library paths in Android Studio project files. 2015-12-03 11:33:46 +00:00
akwizgran 8ae3fb3e35 Upgraded Spongy Castle to 1.53, fixed tests. #146 2015-12-03 11:12:16 +00:00
akwizgran 427efdc7d6 Raise minimum Java version to 6, upgrade H2. #24 2015-12-02 14:59:51 +00:00
akwizgran 79d9b4b6af Raised minimum Android version to 2.3 (API 9). #23 2015-12-02 13:20:55 +00:00
akwizgran 7eb7257076 Added project files for Android Studio. 2015-11-30 11:49:44 +00:00
akwizgran 027ae8340f Whitespace-only code formatting changes. 2015-11-30 09:38:25 +00:00
akwizgran a1d2aaf10e Use JDK 1.7, target Android 5.1. 2015-04-03 20:56:01 +01:00
akwizgran 0dbfd7073f Comments to indicate which locks guard which variables. 2015-01-29 11:12:41 +00:00
akwizgran 47bd84122e Code formatting and small cleanups. 2015-01-28 21:18:31 +00:00
Abraham Kiggundu 851151041e Pull-Merge of latest changes from main repo 2015-01-08 11:54:47 +03:00
Abraham Kiggundu be2a92d6c2 Revert lock variable rename for clarity 2015-01-07 00:37:28 +03:00
Abraham Kiggundu 2b9c469063 Merge branch 'improve-thread-encapsulation' into upstream 2015-01-06 07:15:11 +03:00
akwizgran d3bf2d59a1 Use the same maximum frame length for all transports. 2015-01-05 16:24:44 +00:00
Abraham Kiggundu 9a2e93ebb9 cleanup 2014-12-26 17:35:37 +03:00
Abraham Kiggundu b074978472 Improved encapsulation of thread synchronisation as follows
- replaced use of Object instance mutex with a private final Lock object
- replaced Object signaling with specific condition signalling
2014-12-26 16:40:46 +03:00
akwizgran 388b36b6be Check periodically for retransmittable packets. Bug #46. 2014-12-14 20:26:41 +00:00
akwizgran 29a6596ee3 Use the transport's idle timeout, not a hardcoded value. 2014-12-14 15:18:39 +00:00
akwizgran d4fa656dbb Application layer keepalives to detect dead TCP connections.
DuplexOutgoingSession flushes its output stream if it's idle for a
transport-defined interval, causing an empty frame to be sent. The TCP
and Tor plugins use a socket timeout equal to twice the idle interval to
detect dead connections.

See bugs #27, #46 and #60.
2014-12-13 12:00:40 +00:00
akwizgran d94637b5cf Removed polling from ModemPlugin. 2014-12-05 12:46:11 +00:00
akwizgran 6b4a72aea7 Added Gradle build files because Ant's too efficient for some people. 2014-11-25 14:54:34 +00:00
akwizgran 7b8181e309 Massive refactoring to merge handling of simplex and duplex connections. 2014-11-04 16:51:25 +00:00
akwizgran b24f153704 Renamed a load of things from 'connection' to 'stream'. 2014-10-08 16:21:55 +01:00
akwizgran 07de50f03a Upgraded JNA to 4.1.0. 2014-10-03 11:54:36 +01:00
akwizgran 941efb4bbe Merged IncomingConnectionExecutor and PluginExecutor into IoExecutor.
We don't need two separate executors for long-running IO threads.
2014-10-02 18:02:53 +01:00
akwizgran 4c9296d286 Merged all licensing info into a single file to avoid APK build problems. 2014-07-02 23:01:13 +01:00
akwizgran b4e02a7196 Release Briar code (but not bundled libraries) under Apache 2 license. 2014-06-23 10:26:16 +01:00
akwizgran eaff042601 Don't try to close server sockets twice.
This may have been the cause of bug #69. Removed the wait-for-shutdown
code in DroidtoothPlugin that was added to attempt to avoid that bug.
2014-05-09 19:09:13 +01:00
akwizgran 0eaf46209c Show more debugging info: system memory, VM memory and disk space. 2014-04-10 15:48:15 +01:00
akwizgran 08b91d2483 Poll plugins when connectivity changes. Bug #66.
This should enable us to connect to contacts faster at startup and
whenever a new means of connecting becomes available.
2014-04-04 22:06:36 +01:00
akwizgran e260aac3d2 All tryToClose() methods should check for null arguments. 2014-04-04 20:04:47 +01:00
akwizgran 8310f00848 JNotify native libraries recompiled by infinity0. Bug #41. 2014-03-27 10:32:37 +00:00
akwizgran b99a503f24 Removed unnecessary conditionals from logging statements.
Very important stuff.
2014-03-12 21:00:14 +00:00
akwizgran 511b470aa4 Less verbose logging for plugins. 2014-03-03 15:31:46 +00:00
akwizgran a2d099ea17 Added debugging screen to alpha and beta builds. Dev task #73. 2014-02-28 23:44:35 +00:00
akwizgran 4154119ea5 Convert to and from UTF-8 without catching impossible exceptions.
All JVMs must support UTF-8 encoding.
2014-02-07 22:02:02 +00:00
akwizgran 5c78b4808d Use new IOException(String) for consistency with other calls. 2014-02-07 15:03:58 +00:00
Ximin Luo 217ff30c54 update classpath for jnotify 2014-02-06 17:52:43 +00:00
Ximin Luo 8ff2b60000 support an older Android API level 2014-01-30 12:37:18 +00:00
Ximin Luo c000a69f5b lazily load JNotify to avoid bloating the guice initialization 2014-01-30 12:37:18 +00:00
Ximin Luo 2bdccef705 upgrade to jnotify 0.94 (patched) for 64-bit support, and improve error reporting in tests
- add a UnixRemovableDriveMonitor.checkEnabled to pre-emptively check if it's loaded
- os.arch is always x86,x86_64 on windows, i386,amd64 on linux
- source: http://www.java-gaming.org/index.php/topic,14110
- we'll deal with freebsd support when we come to it, jnotify doesn't even do this atm
2014-01-30 12:37:18 +00:00
akwizgran 822392f9e7 Use strings rather than hashes to identify transports. Dev task #64. 2014-01-24 10:39:34 +00:00
akwizgran 44bb9134d4 Reversing unintentionally pushed change: don't share Timer instances. 2014-01-16 19:31:28 +00:00
akwizgran 66619ec1e7 Use a single Timer instance. 2014-01-16 19:12:27 +00:00
akwizgran 6af3c54c28 Removed shouldFlush() from plugins, added missing PacketWriter method. 2014-01-15 17:10:25 +00:00