Commit Graph

1420 Commits

Author SHA1 Message Date
2bc77ae095 Minor: suppress bogus "cast never succeeds" compiler warning in whitelist manager unit test 2016-08-08 18:05:02 +02:00
da63ad57a4 Minor: run intellij "code cleanup" on all but javascript files. 2016-08-08 18:05:02 +02:00
8c00b5284d Merged in mike-ledgertx-refactoring (pull request #264)
Refactor the core transaction types
2016-08-08 18:02:32 +02:00
befff71252 Address review comments. 2016-08-08 11:44:59 +02:00
8e8a7ea60b Separate WhitelistTrustManager registration from object creation, so that adding entries to the whitelist doesn't cause partial registration errors. 2016-08-05 14:52:30 +01:00
1f94335850 Address review comments. 2016-08-05 15:38:29 +02:00
25f65a60c7 Address review comments. 2016-08-05 14:04:07 +02:00
d61356ca9e Don't let Kryo crawl into Rx subscriptions, and add a unit test to ensure this doesn't regress, as the rule is not intuitive. 2016-08-04 17:19:10 +02:00
845f2bdd64 Merged in pubkey-base58-serialisation (pull request #257)
Pubkey base58 serialisation
2016-08-04 13:58:57 +01:00
b640524bf3 Merged in clint-auto-identity (pull request #261)
Identity service now updates with the network map.
2016-08-04 13:29:54 +01:00
4fb8a38122 core, node: Rename Stirng.toPublicKey to parsePublicKeyBase58 2016-08-04 12:14:40 +01:00
a3cf85e778 core: Use toBase58String/toPublicKey in Kryo 2016-08-04 12:14:40 +01:00
1cebae633d core: Add utilities for parsing/serialising pubkeys as base58 2016-08-04 12:14:40 +01:00
701fc853ad Refactor the core transaction types to improve clarity, simplify verification and prepare for sandboxing.
Changes include:
- LedgerTransaction is now much more central: it represents a fully resolved and looked-up tx, with the inputs available.
- TransactionGroup and TransactionForVerification are gone. There is a temporary TransactionForContract class for backwards
  compatibility but it will also be gone soon.
- ResolveTransactionsProtocol is simplified, and now commits a tx to the database as soon as it's determined to be valid.
- ServiceHub is now passed in more consistently to verification code, so we can use more services in future more easily e.g. a sandboxing service.
- A variety of APIs have been tweaked or documented better.
2016-08-04 13:05:50 +02:00
c2aee2d4e8 Minor: Replace MockServices with a new class that's in core instead of node, old class becomes MockServiceHubInternal. 2016-08-04 12:53:09 +02:00
1c3379f508 Testing: make the ledger DSL take a ServiceHub rather than individual services.
It defaults to a fresh UnitTestServices(). Also clear up a few other areas.
2016-08-04 12:52:02 +02:00
dd53acfb64 Testing: add a UnitTestServices class which implements ServiceHub. This is a lighter weight version of MockServices, and is intended to assist in the testing of core contract code, vs MockServices which can go on to be used only from the node module. 2016-08-04 12:52:01 +02:00
b1c1b7f4b4 Review changes - merged two observables into one. 2016-08-03 16:49:37 +01:00
72c4c2e5f7 Added comments. 2016-08-02 17:27:18 +01:00
9ef1bf0355 Identity service now updates with the network map. 2016-08-02 17:08:46 +01:00
9672168f64 Add DirectRequestMessage
Add DirectRequestMessage for addressing specific endpoints rather than parties.
2016-08-02 13:29:23 +01:00
5df1caf0ca Minor: couple of tiny reformattings. 2016-08-01 16:42:57 +02:00
daff65f220 Minor: add infix utilities for overflow checked arithmetic. 2016-08-01 16:42:57 +02:00
0662798b0f Introduce some new cryptographic utility functions
1. Function for converting raw entropy into an EDDSA key pair. This is useful for unit tests when you don't want a random key but would rather be able to identify it from the logs by eyesight, and will be useful later also when implementing deterministic key derivation.
2. Function that can format any collection of public keys using the bitcoin-style base58 form.
3. A dummy NullSignature object, again, useful for tests when you don't want to provide a real signature.

Then set a handful of dummy unit testing keys to predictable/fixed values.
2016-08-01 16:42:56 +02:00
b40fee1512 Allow for easier conversion from Amount<Issued<T>> to Amount<T> and de-issuerify a few places. 2016-08-01 16:42:56 +02:00
309159da14 Better toString for Amount post-issuer refactoring. 2016-08-01 16:09:22 +02:00
e1d1aed541 Add commodity contract and test obligations can be settled for it 2016-08-01 14:20:04 +01:00
f72e223f3b Add Commodity class 2016-08-01 14:20:04 +01:00
cf4bb0c9af Break down topic into component parts
Break down what is referred to as "topic" of a message into its component parts. This splits the
general topic from the session ID, so it's clear where a session ID is provided, and whether any
given topic string includes a session ID or not.
2016-07-29 14:24:46 +01:00
7d39a101d4 Merged in COR-276 (pull request #239)
Added Jacoco code coverage to gradle.
2016-07-29 13:29:47 +01:00
8d3d9d6572 Removed inline that has Kotlin specific compile bug with specific Gradle configurations. 2016-07-29 13:23:33 +01:00
4a3da67c6c Merged in rg_trade_finance_experimental (pull request #250)
Rg_trade_finance_experimental
2016-07-29 10:41:00 +01:00
a462bb1d6a Incorporate comments from PR 2016-07-28 16:30:53 +01:00
e3f36a4942 Modified tests for new DSL 2016-07-28 15:57:09 +01:00
235497e0f4 Convert long lived services supporting protocol listeners to plugins 2016-07-28 13:39:12 +01:00
09c795e341 Merge remote-tracking branch 'remotes/origin/master' into mnesbit-cor-261-artemis-over-ssl 2016-07-28 13:28:31 +01:00
5410f8b228 Merged in demowebui (pull request #230)
Added an IRS demo web interface
2016-07-28 13:19:32 +01:00
7d5ee8ba08 Create MessageServiceInternal interface to allow NetworkMapCache to register addresses with the network service.
Activate WhitelistTrustManager for now to secure the TLS messaging.
2016-07-28 11:25:57 +01:00
aebdc86225 Reverted change from previous commit. 2016-07-28 09:17:49 +01:00
188fc29436 Cleaned up build.gradle files. 2016-07-28 09:17:49 +01:00
ffc3c8f421 Added Jacoco code coverage to gradle. 2016-07-28 09:17:49 +01:00
d54beca77e Add wallet service for notifying remote nodes of transactions 2016-07-27 17:40:52 +01:00
5a20b67ce2 Clean up comments 2016-07-27 15:45:32 +01:00
e3aef96b09 Merge remote-tracking branch 'remotes/origin/master' into mnesbit-cor-261-artemis-over-ssl
# Conflicts:
#	build.gradle
2016-07-27 15:43:01 +01:00
e8c84867cf Merged in andrius-logging (pull request #240)
Enable logging to file
2016-07-27 14:18:24 +01:00
772ce28a81 remove extra space 2016-07-26 15:42:11 +01:00
9a9df847af Merge remote-tracking branch 'remotes/origin/master' into mnesbit-cor-261-artemis-over-ssl 2016-07-26 15:25:58 +01:00
fea452d9ac Change to a ConcurrentHashSet whitelist so that we don't hold any locks across the DNS lookup. 2016-07-26 14:40:30 +01:00
e81d8b9928 Removed reference from progress tracker output to improve output readability. 2016-07-26 10:43:41 +01:00
cb8876678e Address comments from code review. Also, make whitelist registration synchronized. 2016-07-26 10:35:59 +01:00