* CORDA-3081 warn that flow ID passed to flow kill is malformed as due to JDK8 doesn't fully validate it (JDK8 bug https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8159339)
* CORDA-3335 Corda Shell flow kill - better warning for misformatted flow ID - exit earlier and don't RPC to node, refactoring for detekt
* Fixed not utilising the observables being returned by stateMachines added response with a notUsed(). Opening a ticket for implementation investigation.
* stateMachinesFeed will unsubscribe on interrupt rather than remaining infinitely subscribed.
* Fixed reported detekt issues on the InteractiveShell.
* Changes according to PR review.
Allow node operators to blacklist signing keys (using blacklistedAttachmentSigningKeys config option). These blacklisted keys prevent attachments that are received over the network from being trusted. The docs have been updated to detail how to generate the key hashes that the config requires.
A new shell command attachments trustRoots has been added to see what attachments exist on the node along with information about their trust and where it comes from.
run dumpCheckpoints has been replaced by checkpoints dump as InternalCordaRPCOps needed to change to prevent a function that is meant to be internal from being visible on the shell.
* migrate PersistentIdentityService to use key.toShortString()
update definition of PublicKeyToExternalId mapping to allow fast lookup by externalId/publicKey
* fix misspelled table name
* add test of migration script
* add design document for proposal to move IdentityService to using the correct PK.toStringShort() method for hashing a publickey
* add enterprise testing considerations to design
* address review comments
* fix compilation errors
* modify PublicKeyToOwningIdentityCache to use toStringShort() as it's lookup key
* address syzmon's code review comments
When set to true the RPC client will:
* automatically reconnect when the connection is broken
* simple RPC calls will block until connection is established
* Observables returned from RPC will automatically resubscribe on reconnect so the client continues to receive events. This doesn't guarantee that events will not be lost during the reconnect.
Dumps all the node's checkpoints as JSON into a single zip file in the node's directory. The output contains:
* All the fields for the top-level flow
* The current sub-flow call stack, along with the current progress tracker step for each sub-flow
* The event that suspended the flow, which if it's a send or sendAndReceive will show the payload that was sent
* Low level information on the active sessions with other peers
To prevent making `dumpCheckpoints` part of the public API a new
interface, `InternalCordaRPCOps` has been created and the function
has been moved there. `InternalCordaRPCOps` inherits from
`CordaRPCOps`.
`CordaRPCOpsImpl` now implements `InternalCordaRPCOps`.
`RunShellCommand` and `StringToMethodCallParser` required additional
changes due to issues handling inherited functions. This has only been
raised now due to `InternalCordaRPCOps` inheriting from `CordaRPCOps`.
Many classes have had references to `CordaRPCOps` changed to
`InternalCordaRPCOps`.
* corda-2632 Added catch clause to handle argument exceptions and display the proper error.
* Created specific exception for when the file is missing instead of the general catch all exception.
* Changes according to code review.
* ENT-3322: Improved error reporting when an error occurs in type construction, after the ctor has been found.
* ENT-3322: FlowA in this test violated a restriction of StringToMethodCallParser that parameters with the same name but different types cannot be overloaded.
Fixed up FlowA to not have overloaded operation.
* ENT-3322: Simplified code following review comments.
* ENT-3322: Few updates following PR review comments.
* CORDA-2669 - pendingFlowsCount not in public API
Reintroduce `pendingFlowsCount` to public API (as deprecated). Advise
to use the `gracefulShutdown` command in the shell instead.
* CORDA-2669 - Add pendingFlowsCount to api-current.txt
* Fix stdout renderer to swap out correctly named appender.
Also fix two compiler warnings
* Add clearer exception when console appender cannot be found
* Change error displayed when appender not found to warning
* Remove type declaration on separate line
* Avoid Unicode output from the Progress Tracker on Windows
* Fix an issue with the Progress Tracker where the currently executing state is reported as done
* Split Workflow and contracts of Finance App into separate Cordapps, part 1 - content which is different between OS and ENT is still in contract Cordapp.
* Move CashSelection implementations to workflow module.
* Move CashSelection implmentations to workflow module.
* Move finance module to finance-flows, top level finance module is empty.
* Move finance module to finance-flows, top level finance module is empty.
* Updated build comment.
* Revert publication of combined (contracts and flows) corda-finance.jar (to maintain backwards compatibility with 3rd party cordapps dependent on finance)
* Added backwards compatibility clarification comment.
* Re-instate new cordapp metadata.
* Global rename of `finance-flows` to `finance-workflows` to follow adopted naming conventions.
* Addressed final review comments.
* Rename application to "Corda Finance Demo"
* Generation of original corda-finance jar from new sub-modules.
* Fixed and tested demobench with new split finance contract and workflow jars.
* Renamed finance sub-modules to contracts and workflows.
* Remove Michele!!!
* Minor fix to filtering logic.
* Align CorDapp configuration filename with workflows jar.
* Fix breaks caused by finance module naming changes.
* Final alignment between OS/ENT of finance contract code.
* Type model first draft
* Introduce TypeIdentifier
* Attempting to retrofit fingerprinter with type model
* Complete retrofitting typemodel to fingerprinter
* Ensure component types are resolved correctly
* Fixes and tests
* Move resolveAgainst to TypeIdentifier
* Remote type modelling and reflection
* Convert TypeIdentifiers back into types
* Translate AMQP type strings to type identifiers
* Start replacing DeserializedParameterizedType
* Start roundtripping types through AMQP serialization
* Comments on type modelling fingerprinter
* kdocs and interface reorganisation
* Lots and lots of kdocs, bugfix for cyclic references
* Separate SerializerFactory construction from concrete implementation
* Fewer build methods
* Method naming that doesn't fatally confuse determinisation
* Extract SerializerFactory interface
* Reset to master's version of compiler.xml
* Un-ignore flickering test
* Enums don't have superclasses
* Break out custom serializer registry
* Refactor to separate remote and local serializer factories
* Shrink interfaces
* Further interface narrowing
* Fingerprinting local type model
* LocalSerializerFactory uses LocalTypeInformation
* Resolve wildcards to their upper bounds
* Actually cache custom serializers
* Fix various bugs
* Remove print statements
* There are no cycles in type identifiers
* Drive class carpentry from RemoteTypeInformation
* Refactor and comment
* Comments
* Comments and pretty-printer extraction
* Format long methods with braces
* Serialise composable types using LocalTypeInformation
* Warnings if a type is non-composable
* Rename lookup -> findOrBuild
* Evolution serialisation (no enums yet)
* Eliminate old ObjectSerializer and evolver
* Enum evolution
* Opacity claims types less greedily
* Fix type notation and type erasure bug
* Clean up unused code paths
* Delete unused codepaths
* Move whitelist based type model configuration to own file
* Move opaque type list
* Make all evolution serialisers in one go when schema received
* Minor tweaks
* Commenting and tidying
* Comments
* Rebase against master
* Make flag for controlling evolution behaviour visible
* propertiesOrEmptyMap
* Restore error messages
* Test for CORDA-4107
* PR fixes
* Patch cycles in remote type information after creation
* Fix line breaks in unit test on Windows
* This time for sure
* EvolutionSerializerFactoryTests
* Fix some pretty-printing issues, and a carpenter bug
* PR fixes
* Clarify evolution constructor ordering
* Remote TODO comment, which has been moved to a JIRA story