* Enabled confidential identities in:
** IssuerFlow
** Trader demo
** Two party deal flows
** Two party trade flows
** Corda RPC tests
** Cash flows
** Integration testing tutorial
** Node monitor model tests
** CollectSignatureFlow
* Relay local node's confidential identities to counterparties when requesting transaction
signatures, so counterparties know where the inputs come from.
* Require all identities are known in finality flow
* Ensure all identities in FxTransactionBuildTutorial are known to each other
* Add flow for syncing identities to a number of counterparties
* Address PR comments
* Disable anonymisation in example code
* Revert unnecessary changes remaining from earlier rebases
* Corrections after rebase
* Remove unneeded identity registration
Remove unneeded identity registrations from tests, which sometimes cause duplicated entries in the database
* Revert accidental change in examples
* Revert unneeded imports
* Revert changes to CoreFlowHandlers.kt
* Remove unneeded identity registrations from tests, which sometimes cause duplicated entries in the database
* Add JvmName annotations to ObservableFold and ObservableUtilities
* Move createMapChange() into ReadOnlyBackedObservableMapBase as the only place it's used, to
improve Java interop.
* Clean up Generator by moving extension functions into the class/companion class.
* Add documentation to the actual functions rather than being only on the top level class.
* Add JvmName to Generators
* Move extension functions into the classes they're used in to try supressing generation of empty RPCClientProxyHandlerKt class.
* Add JvmName to ConcurrencyUtils
* Move Iterable<ServiceInfo>.containsType() into Simulation, as it's only useful when verifying
setup of a simulated case. Resolves ServiceInfoKt class being generated.
* Move FlowHandle.notUsed() into the one place it's actually called, so Kotlin stops creating a FlowHandleKt class.
* Rename KeyFactory to CompositeKeyFactory
* Move expandedCompositeKeys into TestDSL as the only place that uses it
* Move NullKeys out of their own package
* Move remaining crypto classes into superpackage
* Move utility classes out of crypto and into utilities package
Work on database backed NetworkMapCache
Make NodeInfo JPA entity.
Enable node startup with it's database network map cache. Fix schema.
Make node not wait for finishing network map service registration if it
successfully loaded data from database.
Add tests for startup without NetworkMapService.
* Rename networkMapRegistrationFuture
Change networkMapRegistrationFuture to nodeReadyFuture, it no longer
indicates the NetworkMapService registration, because we are able to run
network without map service configured.
* Partially integrate database into NetworkMapCache
Full integrtion will come with service removal.
Move MockServiceHubInternal to net.corda.node.testing
* Add workaround to transaction scope race
Temporary workaround to force isolated transaction (otherwise it causes race conditions when processing
network map registration on network map node).
* Remove WorldMapLocation from NodeInfo
Infer the node's location based on X500 name
Add serial number on NodeInfo
For tests of running without NetworkMap, start nodes with nonexistent NetworkMap address
Make clearNetworkMapCache callable via RPC.
* Updated all sample code to use new Vault Query service APIs.
* Fix broken Unit test.
* Added missing transaction boundary.
* Fix broken ScheduledFlow test (caused by assertion on non-ordered collection)
* Remove redundant negative test (as new Vault Query no longer returns iterators).
* Whitespace formatting fixed following PR review from SA.
* Force query to specify a PAGE SIZE equivalent to total states to be exited (RP review comment).
* Use single (and fail fast) instead of first - when only expecting a single result.
* Demonstrate paging and sorting; failfast on single expected result.
* Enhancement: added Sorting by CommonStateAttribute (StateRef txnId and index)
* Fix: incorrect total states count.
* Fixed incorrect total states counting.
* Remove redundant filter (UNCONSUMED).
* Updated tutorial code and associated documentation (building transactions).
* Updated all vaultAndUpdates to vault[Track|Query]By.
* Temporary disable failing Vault Query tests (awaiting pagination PR fix).
* Rebase from master to pick up pagination changes/fix.
* Fixed criteria filter on track.
* Cleanup redundant print output.
* Refactor to extract common function for Vault Query paging and sorting.
* Identified problem in SimmValuation demo failing test caused by query by single participant in participants list (not yet supported in VaultQuery criteria).
* Minor fixes following rebase from master.
* Minor updates following rebase.
* Removed redundant import.
* Fixed type casting error.
* Minor fixes following rebase from master.
* VQ Fix - applied in other PR.
* Removed duplication after rebase and minor fix to failing smoke test.
* Add functions for:
* Retrieving nodes via their legal identity
* Filtering a set of public keys down to those the node has corresponding private keys for
* Modify contract upgrade flows to handle identifying participants after an anomymisation step
* Correct terminology: "party who" -> "party which"
* Modify CashIssueFlow and CashPaymentFlow to optionally use an anonymous identity for the recipient.
* Added throttling to the load test tool.
* Added stability test to the tool.
* Some refactoring to allow some configuration via vm option.
* updated doc.
* gradle now passes system parameter to load test.
* using Guava's RateLimiter instead of execute at fix rate.
Switch to using AbstractParty as the standard identifier for parties in
states, so that full parties can be used during construction of
transactions and anonymised parties when the transaction is being added
to the ledger.
Move AbstractParty, AnonymousParty and Party into a new net.corda.core.identity package,
as they're not really cryptography tools, and in preparation for further code coming in
for identity.
Optimize imports on many files to clean up the resulting refactor.
* Make CompositeKey implement PublicKey
The initial implementation of composite keys as their own distinct class separate from PublicKey
means that the keys cannot be used on standard classes such as Certificate. This work is a beginning
to modifying CompositeKey to being a PublicKey implementation, although significant further work
is required to integrate this properly with the standard Java APIs, especially around verifying
signatures using the new key type.
* First stage of making CompositeKey implement PublicKey interface. Revert to using PublicKey everywhere we expect a key.
* Move algorithm and format into companion object (#432)
Move algorithm and format into companion object so that they can be referenced from other
classes (i.e. the upcoming signature class).
* Add simple invariants to construction of CompositeKey.
Builder emits CompositeKeys in simplified normalised form. Forbid keys with single child node, force ordering on children and forbid duplicates on the same level. It's not full semantical normalisation.
* Make constructor of CompositeKey private, move NodeWeight inside the class.
Add utility function for Kryo deserialization to read list with length constraints.
* CORDA-305: Refactor CordaRPCClient into :client:rpc module
* CORDA-305: Remove the Kotlin test framework from the artifacts.
* CORDA-305: Migrate serialisation whitelist into node-api module.
* CORDA-305: Clean up unused RPC observables.
* CORDA-305: Add :client:rpc module to documentation tasks.
* CORDA-305: Include :finance into :client:rpc for its serialisable classes.
* CORDA-305: Move test classes into the correct directory.
* CORDA-305: Migrate :finance dependency from :client:rpc into DemoBench.
* CORDA-305: Update wording of TODO about handling Observables.
* CORDA-304: Refactor :client modules into :client:javafx and :client:mock.
* CORDA-304: Add :client:mock to Dokka tasks, and remove unused integrationTest task.
* CORDA-304: Migrate DriverBasedTest from node into test-utils.
* CORDA-304: Rename .fx. package to .jfx. to prevent confusion with "exchange rate".
* CORDA-304: Rename module to ':client:jfx'.
* Non-ssl artemis acceptor for RPC connection. (#271)
* New non-ssl acceptor in artemis server for RPC connection.
* Rename artemisAddress with messagingAddress
Rename artemisAddress with messagingAddress so that the node configuration file properties match
the code variable names.
Rename artemisPort to messagingPort in Gradle configuration to match node configuration naming.
* Add rpcPort configuration option for Gradle
* Update docs to reflect changes to RPC port configuration
* Renumber ports in example CorDapp to match numbering used elsewhere
* Restructure upgrade guide
* added config file checks on corda startup to make the upgrade path a bit smoother.