Commit Graph

55 Commits

Author SHA1 Message Date
chris 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
chris 102d63e2c6 Fixed message count per label 2016-08-25 08:50:06 +02:00
chris 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
chris 48ff975ffd Better memory management for the in buffer (the same TODO for the out buffer. 2016-07-25 07:52:27 +02:00
chris abc2f63aa6 Some further fixes and improvements, not all tests working yet 2016-06-20 16:33:47 +02:00
chris 0fadb40c6c Improved tests and fixed some 2016-06-16 19:47:59 +02:00
chris 725d2b848e Fixed migration and added resend and cleanup options to demo application 2016-05-24 17:19:29 +02:00
chris 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
chris 4f0b2cb8f8 Fixed system test (this time for real) 2016-05-06 14:13:39 +02:00
chris a0505f5704 Minor improvements to the demo Application and a fix for when the ACK is empty 2016-04-25 08:13:46 +02:00
chris 61890b3da9 Some improvements to the application 2016-04-15 17:18:11 +02:00
chris 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
chris 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
chris 3e5e431d6f Code cleanup 2016-02-28 23:03:00 +01:00
chris bc68a5d3ec Code cleanup & improvements
- most notably removed some unnecessary synchronize blocks in the DefaultNetworkHandler
2016-02-26 14:34:08 +01:00
chris f6add5b2ea Code cleanup 2016-02-25 16:36:43 +01:00
chris e4a69f42b0 Fixed problem with sending broadcasts
(while adding some tests)
2016-02-13 08:03:05 +01:00
chris 9231cf5eaa Skip system tests by default as they don't work on Travis CI 2016-02-04 10:12:43 +01:00
chris 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
chris 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
chris edd8045327 Fixed / improved message sending and added a system test (it's a start) 2016-02-02 20:40:01 +01:00
chris 9f05af8bb7 Finally fixed the bug that was haunting me for the last week. 2016-01-21 20:32:23 +01:00
chris ac6f291964 Renamed module 'domain' to 'core' to make its purpose more clear 2016-01-17 05:42:49 +01:00
chris 549c8854ed Refactoring: renamed 'security' to 'cryptography' 2016-01-10 13:38:32 +01:00
chris 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
chris 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
chris 117ac3ca73 Fixed some problems and added cleanup on shutdown 2015-10-12 12:44:13 +02:00
chris 3d1bd7227b Updated H2 version 2015-10-12 12:42:11 +02:00
chris 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
chris 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
chris 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
chris 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
chris 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
chris fefefe6809 Added some stuff necessary to publish to maven central - I hope it still builds on travis 2015-06-21 08:58:49 +02:00
chris 72d0fbe550 Version 0.1.0 bump
Updated Gradle file structure so the version and a few other things are only defined once
2015-06-18 21:26:08 +02:00
chris 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
chris 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
chris fe93c95f40 Added some improvements to the demo application 2015-06-11 21:02:01 +02:00
chris 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
chris f76864eebd Added tests for all repositories, fixed some bugs and made database configurable 2015-06-05 13:43:56 +02:00
chris 274c16b748 Implemented sending messages (and fixed a few bugs on the way)
This closes issue #3
2015-05-29 13:17:00 +02:00
chris f0d4f3f81f Updated version to 0.0.1 (I don't know why 1.0 is default for new projects/modules) 2015-05-26 17:30:45 +02:00
chris b347214b66 Introduced some custom exceptions 2015-05-23 16:01:18 +02:00
chris 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
chris 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
chris 1fbc4a1d74 Major refactoring 2015-05-19 19:16:20 +02:00
chris 46bb00c0aa I don't believe it - encryption works!!! 2015-05-12 19:04:00 +02:00
chris 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
chris 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
chris 08c46b3a97 Some work on addresses, unfortunately it doesn't work yet. 2015-04-29 20:08:59 +02:00