* Standardisation in usage of Public Keys in Schema entities.
Use PK Hash where optimal, otherwise use ByteArray/LOB representation of PK.
* Redundant after rebase.
* Use .encoded and Crypto.decode<Public|Private>Key(bytes) instead of Corda serialization.
* Optimize DBPartyAndCertificate entity to store and query on ownerKeyHash.
Move from `chooseIdentity()` to `singleIdentity()` where tests use a single identity, or to fetching by name where multiple identities are present, so we stop using the first identity as special.
* Fixed AbstractNode to load custom notary services properly.
Added a custom notary sample.
* Prevent multiple custom notaries from being loaded
* Throw if more than once custom notary service is loaded
Rework identity usage in tests to extract identity from nodes by name, rather than just arbitrarily choosing the first identity. This better models the intended design for production (future work).
Let NodeInfoWatcher create the directory it wants to poll at startup.
Also log failure in creating the directory, but don't log anything if it can be found at poll time.
Remove all the Kotlin functions with spaces in them since the Android doesn't support them.
See https://github.com/corda/corda/issues/1730 for a more in-depth discussion.
Handle non-standard file systems such as JimFs, in NodeInfoWatcher. Instead of using `toFile()` to convert a Path to a File, open the Path for writing to directly.
* Stop using the watch service, just re-read the whole directory every time. On macOS it's quite unpredictable and the tests are almost always failing.
* Remove local function because it is serialised as a lambda.
* Don't automatically whitelist Kotlin lambdas unless checkpointing.
* Add comment to @CordaSerializable, warning not to allow AnnotationTarget.EXPRESSION.
* Add functions to:
** Return PartyAndCertificate rather than just Party
** Return all NodeInfo entries for a name (rather than just by key)
* General documentation improvements
Update tests
Add a test to show progress tracking works
Include service startable flow in Cordapp data structures.
Respond to PR comments
Fixup change of api inline with PR comments.
Address PR comments
* MockNode rename overrideServices to notaryIdentity
Permit only one override of service.
* MockNetwork: force creation of NetworkMapNode
Tests cleanup: decouple normal nodes and network map. NetworkMap node is created as first.
Add the logic in node to poll for new serialized nodes to appear on disk.
Newly discovered nodes are automatically added to the PersistentNetworkMapCache