Commit Graph

47 Commits

Author SHA1 Message Date
dad05d835b Created an improved JdbcNodeRegistry and removed MemoryNodeRegistry, as it doesn't properly work with the way nodes are handled and disseminated in the new PyBitmessage client. The new one should work a lot more stable. 2016-09-01 07:35:46 +02:00
505818a712 Added option to connect to local Bitmessage client
(This makes it easier to debug some problem or make some tests)
2016-08-08 18:00:50 +02:00
48ff975ffd Better memory management for the in buffer (the same TODO for the out buffer. 2016-07-25 07:52:27 +02:00
abc2f63aa6 Some further fixes and improvements, not all tests working yet 2016-06-20 16:33:47 +02:00
0fadb40c6c Improved tests and fixed some 2016-06-16 19:47:59 +02:00
725d2b848e Fixed migration and added resend and cleanup options to demo application 2016-05-24 17:19:29 +02:00
05d9ea93d2 Acknowledgments are now returned, received, and the message (Plaintext object) updated
-> no logic to resend messages yet
2016-05-06 19:39:39 +02:00
4f0b2cb8f8 Fixed system test (this time for real) 2016-05-06 14:13:39 +02:00
a0505f5704 Minor improvements to the demo Application and a fix for when the ACK is empty 2016-04-25 08:13:46 +02:00
61890b3da9 Some improvements to the application 2016-04-15 17:18:11 +02:00
e8ddf90363 Provide a more flexible way to label messages.
I'm not quite sure about chans yet
2016-04-11 15:10:59 +02:00
32ea3517fe Chans should now work.
Other deterministic addresses should be easy to implement, but aren't done yet
2016-04-07 17:24:56 +02:00
3e5e431d6f Code cleanup 2016-02-28 23:03:00 +01:00
bc68a5d3ec Code cleanup & improvements
- most notably removed some unnecessary synchronize blocks in the DefaultNetworkHandler
2016-02-26 14:34:08 +01:00
f6add5b2ea Code cleanup 2016-02-25 16:36:43 +01:00
e4a69f42b0 Fixed problem with sending broadcasts
(while adding some tests)
2016-02-13 08:03:05 +01:00
354f506872 Raised timeout for test so hopefully it doesn't fail anymore on Travis CI (otherwise there must be a different problem) 2016-02-03 19:28:41 +01:00
985e830779 Made TTLs easily changeable (albeit not for specific messages)
This should make the system test run on Travis CI again
2016-02-02 21:05:14 +01:00
edd8045327 Fixed / improved message sending and added a system test (it's a start) 2016-02-02 20:40:01 +01:00
9f05af8bb7 Finally fixed the bug that was haunting me for the last week. 2016-01-21 20:32:23 +01:00
549c8854ed Refactoring: renamed 'security' to 'cryptography' 2016-01-10 13:38:32 +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
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
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
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
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
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
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
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
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
fe93c95f40 Added some improvements to the demo application 2015-06-11 21:02:01 +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
b347214b66 Introduced some custom exceptions 2015-05-23 16:01:18 +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
46bb00c0aa I don't believe it - encryption works!!! 2015-05-12 19:04:00 +02:00
fde6398156 Fixed some stuff and broke some other - my goal is to solely use the java.security API 2015-05-05 20:48:42 +02:00
a65907f13b Some work on addresses and private keys that still doesn't work. As a side effect, sending objects now works basically. 2015-05-01 17:14:43 +02:00
f00c6018e7 Some refactoring
- I didn't like the way the context was initialized
- The DatabaseRepository got too complicated
2015-04-24 11:11:08 +02:00
51c1ecfd41 Minor refactoring
I think having the read method in the same place as the write method might help preventing some errors
There are some people who are strictly against using static methods. I suppose I'm not experienced enough yet.
2015-04-18 16:44:00 +02:00
e611e5e20a More or less properly shutdown client / network node 2015-04-17 13:01:46 +02:00
32de01bbf5 Some basics seem to work now like storing messages, addresses, inventory vectors etc. 2015-04-14 19:47:53 +02:00
35088ca033 Network code now works well enough for the server to think it successfully established a connection 2015-04-07 18:48:58 +02:00