Commit Graph

78 Commits

Author SHA1 Message Date
61788802c5 Some POW improvements 2015-12-18 16:42:17 +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
99266712fa Some extensions for server POW 2015-11-28 20:27:05 +01: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
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
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
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
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
884171fe18 issue #15: fixed socket timeouts and connection shutdown - no exceptions should be thrown if the network node is being shut down, although it can take up to 5 seconds = max(READ_TIMEOUT, CONNECT_TIMEOUT) 2015-06-24 22:56:17 +02:00
b6f42c2f3d Version 0.1.1 bump - fixed unit test / DB initialisation error 2015-06-18 21:53:35 +02:00
6be8d51f6d Distributable JAR build
- connection manager should now be rock stable
- does try to create new connections as long as there are less than eight active connections, which might result in more than eight outgoing connections, but this shouldn't be a problem
- some minor improvements and bug fixes
2015-06-18 13:41:11 +02:00
1dc4582012 Issue # 5: fixed test and initialisation 2015-06-17 06:23:00 +02:00
9b0de83706 Issue # 5: initialize node repository if there are no nodes in DB 2015-06-17 06:00:03 +02:00
49a9e0c5f7 Fixed test 2015-06-16 07:08:33 +02:00
c0a7acc609 Greatly improved network code - the "manage the node repository" part of issue #5 should now be OK 2015-06-16 06:41:59 +02:00
ed0d1c2911 issue #4: prevent connections to self, select random nodes to connect to 2015-06-13 17:37:55 +02:00
bd5bf76904 Improved connection management, preventing multiple connections to the same node, and improved broadcast handling. 2015-06-12 06:57:20 +02:00
b4683bba68 Broadcasts. Receiving seems to work, but there still seems to be a problem with sending them. 2015-06-09 22:45:24 +02:00
f76864eebd Added tests for all repositories, fixed some bugs and made database configurable 2015-06-05 13:43:56 +02:00
274c16b748 Implemented sending messages (and fixed a few bugs on the way)
This closes issue #3
2015-05-29 13:17:00 +02:00
b793526f2f Inventory items are now saved only if processing didn't fail. Receiving messages works, but there seems to be a problem with the POW check in some circumstances. 2015-05-23 10:27:05 +02:00
6b3b361aa3 A simple command line application (WIP), and a few tests. Unfotrunately, receiving messages doesn't seem to work yet. 2015-05-22 20:51:57 +02:00
1fbc4a1d74 Major refactoring 2015-05-19 19:16:20 +02:00