The contract upgrade handler assumes that the state to be upgraded is
created by a WireTransaction. This breaks the upgrade process if it was
in fact issued by a ContractUpgradeWireTransactions or a NotaryChangeWireTransaction.
The entry point to the API has been simplified to just requireing a list of packages to scan, with sensible defaults provided for the metadata. Because of the wither methods, having parameters for the metadata (with default values) seems unnecessary. Also the ability to scan just individual classes has been made internal, as it seems unlikely app developers would need that level of control when testing their apps.
TestCordappImpl is a data class and thus acts as a natural key for the Jar caching, where previously the key was the package names. This fixes an issue where it was not possible to create two CorDapp Jars of the same package but different metadata.
* Move Raft and BFT notaries into separate modules
* Move schemas
* Fix tests & demos
* Modified logic for creating notary services:
Added a new field 'className' to the notary configuration. The node now
loads the specified implementation via reflection. The default className
value points to the simple notary implementation for backwards compatibility.
Relevant schemas are loaded in a similar fashion.
For backwards compatibility purposes the default SimpleNotaryService will
remain built-in to node, but its cordapp will be generated on startup – so
the loading of notary services is streamlined.
* Move test namedcache factory to test utils
* Added constraint type information to vault states table.
* Added Vault Query criteria support for constraint data.
* Added documentation and changelog entry.
* Added missing @CordaSerializable.
* Fix minor bug in test setup and parsing code.
* Use binary encoding data types instead of serialize/deserialize.
* Optimized storage of constraints data.
Additional assertions on Vault Query constraint data contents (to validate encoding/decoding).
Tested with CompositeKey containing 10 keys.
* Addressing PR review feedback.
* Query by constraints type and data.
* Revert back accidentally removed code for contractStateType filtering.
* Incorporating final PR review feedback. Use @JvmOverloads on constructor.
* Make sure constraintInfo is class evolution friendly.
* BoringSsl dependency
* Merge over boring_ssl changes
* Merge over boring_ssl changes
* Upgrade netty-tcnative (and netty to compatible version)
* Add openSSL flag to SSLConfiguration and implementations.
* Make SSL implementation switchable for Artemis
* Parameterize AMQP bridge tests on use of openSSL
* Plumb through open SSL flag to AMQP client/server.
* Add open ssl flag to reference.conf
* Slight clean-up
* Add LoggingTrustManagerWrapper for OpenSsl contexts
* Remove unneeded lazy and check for double wrapping
* Fix TrustMangerWrapper and test, clean-up
* Add key factory wrapper to get the current certificate chain out.
* Use cert chain returning key mananager factory to get local cert
* Force consistent netty-tcnative version across all dependencies
* Make proton wrapper tests check all combinations of client/server native/java SSL
* Add test netty server/client to run SSL tests with
* Simplify usage of test netty components and clean up
* Improve exception handling in NettyTestHandler
* Add openSSL test for X509UtilitiesTests
* Expose engine for test usage
* Add the X509 peer chain check from the socket based test
* Port of TLSAuthenticationTests to use Netty so we can use different SSL providers, add boringSSL tests
* Adapt tests to new config structure
* Readd `useOpenSsl` configuration
* Readd `useOpenSsl` configuration
* Fix up ArtemisTransport for OpenSSL plus tests
* Adapt auth tests
* Formatting
* Remove obsolte file
* Fix config misnomer
* Add SNI host logic to OpenSSL execution branch
* Remove TLS_DHE_RSA tests
* Make exception handling in the netty test infra deterministic
Fix Liquibase quoting strategy for PostgreSQL to follow Corda convention.
In Liquibase for Postgres if schema name has uppercase or lowercase characters only then Liquibase would send it without double quotes and effectively make them lowercase.
Alter Postgres Liquibase dialect to wrap schema names in double quotes. This allows e.g. schemaName=ALICE be send as "ALICE" by Liquibase.
Corda persistence was already wrapping with double quotes, but certain cases in Liquibase were not following this. The result was that SQL run by Liquibase couldn't find schema (e.g. select ALICE.tablename ... in Postgres matched alice schema name not ALICE one).
The fix enables one integration test to be run now against standalone databases.
* CORDA-1726 Make sure test frameworks and nodes refuse to start on anything except the right Java versions
Move isValidJavaVersion(), hasMinimumJavaVersion() to Node as it can be use for check in DriverDSL for starting in-process node,
in-process node doesn't go via NodeStartup class where the correct Java version is checked.
Added safeguard to hasMinimumJavaVersion as some JDKs distributions may not have the update version number (e.g. AdoptOpenJDK) which causes unintended parse exception.
* CORDA-1726 Make sure test frameworks and nodes refuse to start on anything except the right Java versions - remove new test, for proper testing this would use reflection and field setting visibility modifiers which easly can has side effects on the subsequent tests
* Addressing PR comments.
Add SQL setup in new test classes which were missing it.
Ignoring H2 tests when running against standalone database.
Revert datasource Enterprise specific configuration for RaftTransactionCommitLogTests.kt test, and mark it as required for test in database mode.
* Separate out Checkpoint serialization
* Update kdocs
* Rename checkpoint serialization extension methods
* Fix bungled rename
* Limit API changes
* Simplify CheckpointSerializationFactory
* Add CheckpointSerializationScheme to API checker
* CheckpointSerializationScheme should not be implemented
* Move checkpoint serialisation to internal package
* Remove CheckpointSerializationScheme from api-current
* Quarantine internal classes
* Remove checkpoint context from public API
* Remove checkpoint context from public API
* Fix test failures
* Completely decouple SerializationTestHelpers and CheckpointSerializationTestHelpers
* Remove CHECKPOINT use case
* Remove stray reference to checkpoint use case
* Fix broken test
* ENT-2489: Trivial change to prep for multiple RpcWorkerServiceHubs (i.e. identities)
* ENT-2489: Allow passing `targetLegalIdentity` from Client RPC call.
* ENT-2489: Starting RpcWorker with multiple RpcWorkerServiceHubs (unfinished)
* ENT-2489: Starting RpcWorker with single (for now) RpcWorkerServiceHub
* ENT-2489: Tighten-up integration tests assertions
* ENT-2489: Introduce RPCOpsRouting
* ENT-2489: Output configs for reference
* ENT-2489: Extend test for RpcWorker to operate with multiple identities.
* ENT-2489: Remove un-necessary P2P address
* ENT-2489: New test for RpcWorker getting paid.
* ENT-2489: Make RpcWorkerMultiIdentityTest work
* ENT-2489: Use MAX_RPC_MESSAGE_SIZE when configuring RPC broker.
* ENT-2489: Add exception clause when client attempts to use the wrong identity.
* ENT-2489: Fixes post merge from `master`.
* ENT-2489: Fixes post merge from `master`.
* ENT-2489: Explicitly specify X500 name in test.
* ENT-2489: Use single flow worker and switch anonymity off when making payment.
* ENT-2489: Fix for RpcWorkerTest.
Add `NetworkMapUpdater` to `FlowWorkerServiceHub` or else no-one will ever send a signal on `networkMapCache.nodeReady` future.
Not having `networkMapCache.nodeReady` in completed state, will prevent SMM from operating properly.
* ENT-2489: Handle gracefully the fact that session might be already closed.
* ENT-2489: Fix incorrect merge from `master`.
* ENT-2489: Make `RPCOpsRouting` generic with regard to `RPCOps` following discussion with @mnesbit
* ENT-2489: Make `methodTable` uniform for all the legal names.
* ENT-2489: Make `ObservableContext` non-generic.
* ENT-2489: Tidy-up shutdown sequence post merge from `master`
* ENT-2489: Correct exception type thrown
* ENT-2489: Generics test compilation fix.