Commit Graph

1396 Commits

Author SHA1 Message Date
akwizgran
f5628e5581 Use Guice rather than reflection to load plugins.
This allows different plugins to have different dependencies without
cluttering the plugin factory API.
2012-12-15 01:16:48 +00:00
akwizgran
8bc27528a6 Reduced visibilty of constructors. 2012-12-15 00:10:29 +00:00
akwizgran
13df22f69a Better hashCode methods. 2012-12-14 22:11:29 +00:00
akwizgran
47749c3c0d Converted ReliabilityLayer into an interface for better testability. 2012-12-14 21:57:50 +00:00
akwizgran
e5d15d42d6 Use an executor for the reliability layer's writer task. 2012-12-14 21:24:12 +00:00
akwizgran
1e1a226f30 Reliability layer must call Sender.tick() periodically. 2012-12-14 20:44:28 +00:00
akwizgran
1bc3d52957 If an exception occurs during fast retransmission, propagate it. 2012-12-14 20:19:53 +00:00
akwizgran
6e567e1e55 Removed a redundant variable.
The offHook flag was equivalent to reliabilityLayer != null.
2012-12-14 19:42:55 +00:00
akwizgran
0bfa4f15a1 Safer locking for ModemImpl. 2012-12-14 19:34:25 +00:00
akwizgran
cd3bacc8cf Code cleanup for modem plugin, better locking in ModemImpl. 2012-12-10 16:15:50 +00:00
akwizgran
15ab5be476 Equals method must be symmetric and transitive. 2012-12-09 20:29:29 +00:00
akwizgran
a97dc0de6b Don't let references to this escape from constructors. 2012-12-07 17:22:24 +00:00
akwizgran
57bc9d3313 Flush the output stream when closing. 2012-12-07 17:21:58 +00:00
akwizgran
068d3b1dbd The reliability layer should run when the modem is off the hook. 2012-12-07 16:20:53 +00:00
akwizgran
a6777f1fe1 Ensure each reliability layer is started and stopped. 2012-12-07 15:40:03 +00:00
akwizgran
19106ae044 Log exceptions with stack traces. 2012-12-07 15:22:34 +00:00
akwizgran
90978fa9c6 Removed verbose logging that was added for debugging. 2012-12-07 15:21:32 +00:00
akwizgran
c4bf931b80 Ensure the reliability layer is stopped when the modem is stopped. 2012-12-07 15:03:54 +00:00
akwizgran
9528a8b6d6 Minor refactoring and logging for reliability layer. 2012-12-07 15:00:16 +00:00
akwizgran
28086e1a7f Abort connection attempt if NO CARRIER is received from modem. 2012-12-07 14:43:23 +00:00
akwizgran
64a8fb1888 Wait for all data to be acked when flushing output stream. Logging. 2012-12-06 18:20:55 +00:00
akwizgran
7759c10d23 Don't let references to this escape the constructor. 2012-12-06 16:57:31 +00:00
akwizgran
5516503f67 Removed broken code for flushing the output stream. 2012-12-06 16:56:08 +00:00
akwizgran
0b7ecde4c8 Wait for writes to complete before closing the serial port. 2012-12-06 16:36:51 +00:00
akwizgran
1786b39d6e Don't overwrite the first frame's header with data. 2012-12-06 16:09:15 +00:00
akwizgran
d3062a992d Increased connection timeout to 2 minutes, more logging. 2012-12-06 16:05:57 +00:00
akwizgran
058323c6c2 Log at Level.INFO instead of Level.FINE. 2012-12-06 16:01:31 +00:00
akwizgran
940f362a97 More logging to debug the reliability layer. 2012-12-06 15:55:14 +00:00
akwizgran
706d3ea3cf Initialise the reliability layer. 2012-12-06 15:55:00 +00:00
akwizgran
e9ebec44cd More logging to debug the reliability layer. 2012-12-06 15:45:14 +00:00
akwizgran
4c9c49fa55 Logging to debug reliability layer. 2012-12-06 15:36:51 +00:00
akwizgran
f9ec483791 If the modem is off the hook when it's stopped, hang up. 2012-12-06 15:33:51 +00:00
akwizgran
cdc89f5cba Recompiled jSSC for Java 1.5 (again). 2012-12-06 15:20:16 +00:00
akwizgran
a4712140e6 Made serial port's state volatile, added method for stopping modem. 2012-12-06 15:09:04 +00:00
akwizgran
25fa4decfb Include /dev/ttyusbmodem* in serial port list on OS X. 2012-12-06 14:34:10 +00:00
akwizgran
f0c61a9b25 Find Linux serial ports by exploring /dev rather than executing dmesg. 2012-12-06 14:17:03 +00:00
akwizgran
80f5e0a7ff Don't try to close the serial port if it wasn't opened. 2012-12-06 14:07:19 +00:00
akwizgran
4ece151df8 Include stack traces in logs. 2012-12-06 14:00:31 +00:00
akwizgran
56e7f459e8 Allow the modem to respond OK more than once. 2012-12-06 13:56:14 +00:00
akwizgran
c13c01a114 Recompiled jSSC for Java 1.5. 2012-12-06 13:46:16 +00:00
akwizgran
12765ee173 Patched jSSC to recognise /dev/tty.modem as a serial port on OS X. 2012-12-06 13:43:30 +00:00
akwizgran
aec43d6de7 Enabled logging in non-JUnit modem tests. 2012-12-06 13:36:10 +00:00
akwizgran
dca9470c28 Updated ant build files for multi-project structure. 2012-12-05 23:15:35 +00:00
akwizgran
f5626bee05 Moved API classes into a separate project to enforce dependency rules. 2012-12-05 22:19:12 +00:00
akwizgran
b995a2dce8 Set Eclipse compilation target to Java 1.5. 2012-12-05 21:02:30 +00:00
akwizgran
f4f7b96d50 Separated Android code and core code into distinct Eclipse projects.
This should make it possible to develop the core in Eclipse without the ADT.
2012-12-05 20:39:31 +00:00