Commit Graph

336 Commits

Author SHA1 Message Date
e29310102f Updated UML diagram 2016-01-19 21:07:26 +01:00
35077243b0 Fixed synchronization 2016-01-17 07:13:29 +01:00
ac6f291964 Renamed module 'domain' to 'core' to make its purpose more clear 2016-01-17 05:42:49 +01:00
8764642878 Major fixes and improvements to the network module, fixing problems where objects where requested multiple times or not at all in some situations. 2016-01-16 08:47:50 +01:00
549c8854ed Refactoring: renamed 'security' to 'cryptography' 2016-01-10 13:38:32 +01:00
de0100e14f Merge branch 'feature/server-pow' into develop 2016-01-10 12:22:57 +01:00
fad3e07871 Some changes needed for POW server and some general improvements 2015-12-21 15:13:48 +01:00
61788802c5 Some POW improvements 2015-12-18 16:42:17 +01:00
51bf3b8bd2 Fixed tests 2015-12-12 11:05:13 +01:00
ab6a3c56dd The POW callback is now a service and its state stored.
The proof of work engine therefore just has to remember its initial hash making server based POW easier.
2015-12-08 20:27:32 +01:00
991a0e5f86 Some improvements for custom message handling 2015-12-02 17:45:50 +01:00
99266712fa Some extensions for server POW 2015-11-28 20:27:05 +01:00
2fae90c433 Some code for sending acknowledgements
- some of it isn't tested
- somehow the ack part seems to be empty, even though the flag should be set
2015-11-08 19:29:26 +01:00
1f05a52f05 Improvements
- Massively reduced logging, especially at debug level
- Optimizations to reduce system load
- Use bootstrapping to find stable nodes
2015-11-08 10:14:37 +01:00
2a8834e3c6 Timeout might have been too short for Travis CI
(or there is an actual problem with concurrency)
2015-10-30 20:05:55 +01:00
c9c0806e0d Attempt to disconnect on thread interrupt 2015-10-29 12:34:29 +01:00
9c2d8589bf Improved POW test 2015-10-28 16:56:09 +01:00
b496f81b20 Fixed POWEngine and improved test.
(Locks can't be released from a different thread, we need to use a semaphore)
2015-10-27 07:50:20 +01:00
36fe780766 The nonce is now set over a callback method in the POW engine. This should make some POW implementations easier. 2015-10-26 09:49:49 +01:00
bdc8e025c1 Connections are now severed after a configurable time (12h by default) or when a limit is exceeded (150 by default) 2015-10-24 12:08:23 +02:00
a398b072b5 (probably) fixed another concurrency problem in the tests 2015-10-19 15:14:25 +02:00
fb300c8731 Fixed possible ConcurrentModificationException 2015-10-19 15:08:11 +02:00
1e605f56a5 Added method to retrieve all properties 2015-10-18 18:22:49 +02:00
3f1b41a2c1 Merge branch 'develop' of github.com:Dissem/Jabit into develop 2015-10-15 18:04:55 +02:00
ac70a4b632 We probably shouldn't leave the bitmessage node running after the test is finished 2015-10-15 17:59:32 +02:00
4913a21b11 Fixed NetworkHandlerTest 2015-10-15 15:34:04 +02:00
d39342b12f Update .travis.yml
Travis seems to use Java 7 by default, probably because it's defined in the base `build.gradle`. This causes a problem for modules that use Java 8.
2015-10-15 08:21:41 +02:00
409100ab20 Work-around for parsing problem
(and made code more robust for different parsing problems)
2015-10-14 22:56:46 +02:00
ddaa52f416 Merge branch 'feature/threaded-connections' into develop 2015-10-14 20:38:37 +02:00
511b3c1754 Connections now use two separate threads for writing and listening
- this should avoid dead locks, specifically when connecting to Jabit :/
- also, Java 8 features are now allowed in modules not needed by Android clients
2015-10-14 18:37:43 +02:00
117ac3ca73 Fixed some problems and added cleanup on shutdown 2015-10-12 12:44:13 +02:00
3d1bd7227b Updated H2 version 2015-10-12 12:42:11 +02:00
ea1419eda1 Synchronisation API - added option to wait for the synchronization to finish 2015-10-08 13:12:39 +02:00
f9ff22bebe Synchronisation API and related refactorings / improvements
-> lets you synchronize with the Bitmessage network without staying connected
2015-10-07 21:50:41 +02:00
c3fdee79ca Some bugfixes and added findMessages by sender 2015-09-29 07:13:27 +02:00
7fb837645f Synchronisation now shouldn't fail if the trusted host has no new messages
- fixed tests for Gradle builds
- fixed SerializationTest
2015-09-25 23:35:31 +02:00
d67c932fb2 Added synchronization code and unit test.
Synchronisation fails if the trusted host has no new messages - this needs to be fixed (but shouldn't be an issue for real world applications)
2015-09-24 08:09:20 +02:00
f89d1a342e Fixed a few problems:
- some bugs that creeped in when I moved security into its own adapter
- improved some DB code as it doesn't work in Android anyway
- all entities should be serializable (very useful in Android)
2015-08-28 13:48:01 +02:00
4911c268c2 Changed repositories to work with SQLDroid, which seems to have very limited support for blobs, at least it didn't work when I used stream. 2015-08-05 19:55:53 +02:00
b8546e28af Moving "Security" to a separate port, so there can be a Bouncycastle and a Spongycastle implementation. (BC doesn't work on Android, SC can't be used on Oracle's JVM) 2015-08-05 19:52:18 +02:00
6542bd1451 now the build should work for anyone (esp. travis) 2015-07-04 11:13:35 +02:00
070cde699e Version 0.2.1-SNAPSHOT bump - minor changes so anyone should be able to build and I can easily upload to maven central 2015-07-04 10:26:02 +02:00
bef9ea716e Merge branch 'release/0.2.0' into develop 2015-07-03 14:48:34 +02:00
c557eafc36 Merge branch 'release/0.2.0' 2015-07-03 14:48:33 +02:00
c1ca1d856d Version 0.2.0 bump 2015-07-03 14:47:25 +02:00
6fbb3f850d There are some instances where an inventory item is requested and therefore saved twice. This shouldn't be logged as an error. 2015-07-03 14:46:55 +02:00
6f50c200ee Added import/export to the demo app
- discovered private key length was wrong - fixed
- as things are broken anyway, refactored flyway migrations - you'll need to delete ~/jabit.*.db
2015-07-03 11:28:06 +02:00
65fdd7d408 Dropped obsolete table and set lower POW target for test (there is no need) 2015-07-03 09:04:35 +02:00
7f4c67f43e Removing IV of received objects from requested objects list (I forgot that one) 2015-07-03 07:56:18 +02:00
2c4d95af2f smarter network code, fixed various issues
- deciding on the stream at creation time is just silly - it should be done based on the identities (this part is TODO)
- changed NodeRegistry so it doesn't store nodes - this should help to connect faster
- inventory items shouldn't be advertised to nodes that are already aware of them (issue #13)
- objects shouldn't be requested more than once (issue #9)
2015-07-01 06:57:30 +02:00