Commit Graph

586 Commits

Author SHA1 Message Date
Tudor Malene
11d59cf86a CORDA-1847 - Backport hibernate observer fix (#3726)
* CORDA-1847 Backport hibernate observer fix

* CORDA-1847 Fix tests
2018-08-06 11:51:01 +01:00
Shams Asari
9fc108aa1e CORDA-1709 - The MVP blob inspector, able to inspect network service blobs (#3503)
* Cleanup and improvements to the serialisation format of JacksonSupport (needed for CORDA-1238) (#3102)

Also deprecated all the public members that shouldn't have leaked into the public API.

(cherry picked from commit 3bb95c3)

* CORDA-1238: Updated JacksonSupport to support SerializedBytes, CertPath, X509Certificate and the signature classes (#3145)

SerializedBytes are first converted to the object it represents before being serialised as a pojo.

These changes will be needed to support the the blob inspector when it will output to YAML/JSON.

(cherry picked from commit b031e66)

* Cherry picked part of commit 824adca to port over *only* the JackSupport refactoring.

* CORDA-1238: Moved the blob inspector out of experimental and wired it to JackonSupport (#3224)

The existing output format was not complete and so was deleted to avoid it becoming a tech debt. We can always resurrect it at a later point.

(cherry picked from commit 4e0378d)

* Added back support for parsing OpaqueBytes as UTF-8 strings in JacksonSupport (#3240)

(cherry picked from commit d772bc8)

* Cleaned up blob inspector doc (#3284)

(cherry picked from commit b7fbebb)

* Blobinspector: trace level logging with --verbose (#3313)

(cherry picked from commit 6a2e50b)

* Cherry picked part of commit 3046843 to fix issue with --version

* Fixes to the api file
2018-07-03 19:58:13 +01:00
Michele Sollecito
b6339a7fc6 CORDA-1575, CORDA-1341 - Fix logfiles for out of process nodes, Ensure API can be called concurrently wrt transactions.(#3312)
* [CORDA-1575]: Out of process nodes started by the driver do not log to file (fix).

* [CORDA-1341]: Ensure API can be called concurrently wrt transactions.

* [CORDA-1575]: Fixed unstable test.
2018-06-07 11:26:19 +01:00
Katelyn Baker
25e76017e1
CORDA-1346 - split the simm valuation demo to reduce the size of the contract jar - backport (#3099)
* CORDA-1346 split the simm valuation demo to reduce the size of the contract jar (#3078)

* CORDA-1346 fix backport
2018-05-09 17:05:38 +01:00
Anthony Keenan
59bdc5862c CORDA-1304 - Remove superfluous registerInitiatedFlow calls from tutorial and example tests (#2944) (#3035) 2018-05-01 14:32:11 +01:00
Anthony Keenan
de13c9030c CORDA-1292 - Add CordaService testing documentation and improve tests in irs-demo (#2929) (#2938)
* Add CordaService testing documentation and improve tests in irs-demo

* Addressed review comments
2018-04-06 14:24:31 +01:00
Andrius Dagys
c367df0e83 CORDA-1171 - When a double-spend occurs, do not send the consuming transaction id and requesting party back to the client - this might lead to privacy leak. Only the transaction id hash is now returned. (#2746) 2018-03-08 20:44:13 +00:00
Konstantinos Chalkias
cbc07b791c CORDA-1175 - counterparty docs homogenisation (#2747) 2018-03-06 16:10:48 +00:00
Maksymilian Pawlak
a042240f26 Corda-1137 - Docker/docker-compose on Windows (#2726)
* Remove IRS Docker demo helpers

(cherry picked from commit 8992b2c)

* Add configuration variables info in README
Switch to corda fork of docker-compose-rule to include default Windows docker location

* Review fixes
2018-03-05 16:41:18 +00:00
Katelyn Baker
40fe6531ee
CORDA-1115 - Cannot serialize private nested objects (#2709)
* CORDA-1115 - Cannot serialize private nested objects

Backport from master

* Fix backport issue
2018-03-02 18:14:23 +00:00
Maksymilian Pawlak
57067065f4 CORDA-1112 - Explicit dependency on JS dep dir seems to eliminate race condition bug (#2675)
* Explicitly add directory with downloaded JS dependencies

* Indentation
2018-03-01 14:54:59 +00:00
Anthony Keenan
d77290831c CORDA-1035 - Testing api KDoc Updates (#2670)
* [CORDA-1035] Testing api KDoc Updates (#2584)

* Testing api KDoc Updates

* Update after code review

* Update api-current

* Revert changes to compiler.xml

* Made comment changes from review

* Fixing merge conflict

* Don't expose net.corda.node through test API (first pass)

* Fixing merge conflicts

* Update api-current

* Addressing review commits

* Fix exposure of internal implementation of MessageHandlerRegistration

* Make InProcess expose ServiceHub instead of internal StartedNodeServices

* Move InternalMockMessaginService interface to internal namespace

* Move MOCK_VERSION_INFO to internal namespace to avoid exposing VersionInfo

* Don't expose WritableTransactionStorage via testing api

* Create public VerifierType enum

* Update api-current and modify check-api-changes to check for net.corda.node exposures

* Fix merge conflicts

* Fixing another merge conflict

* Fix accidentally broken unit tests

* Make getInternalServices a property

* Fix failing unit tests

* Add todo to check-api-changes

* Fix rpc sender thread busy looping

* Fix tests

* Fixing tests

* Address mike's comments

* Fixing tests

* Make random port allocation internal

* Update api

* Update api
2018-02-28 15:59:56 +00:00
Tommy Lillehagen
cf5498a7b0 CORDA-1102 / CORDA-1103 - Fix IRS Demo on Windows (#2668)
* CORDA-1102 - Fix IRS demo README

* CORDA-1103 - Fix JAR paths in IRS demo launcher
2018-02-28 14:46:37 +00:00
Andrius Dagys
659d6c03ef CORDA-696 - Create separate transaction types for contract upgrade transactions (#2589)
* CORDA-986 and CORDA-985 CompositeKey and Signature verification performance fixes (#2467)

* CORDA-696: Create separate transaction types for contract upgrade transactions.

Add rationale around upgrade transactions

Move contract upgrade transaction resolution logic into internal until it's stabilised.

Throw a better exception when contract attachment not found

Default legacy contract constraint to always accepting - needs to be changed to whitelist constraint before merging

Introduce a new upgraded contract interface that allows specifying the legacy constraint.

Remove StateLoader, make all tx resolution functions take in ServicesForResolution

Contract upgrade transactions can handle whitelist by zone constraints

When creating a contract upgrade transaction, make sure the attachment of the old cordapp gets attached when using hash constraints.
Attachment lookup for a given contract class name only scans currently loaded cordapps, and we don't load old versions of cordapps.
2018-02-22 17:51:41 +00:00
Katelyn Baker
e2fee754eb
CORDA-1080 - Doc update to make instructions clearer (#2598) 2018-02-21 17:31:03 +00:00
Andrius Dagys
f6c82dc99e CORDA-1010 - Send a request signature in addition to a transaction to the notary (#2573)
* Make NotaryFlow.Client more modular and easier to customise

* CORDA-1010: Send a request signature in addition to a transaction to the notary (#2527)

CORDA-1010: Notary flow - clients now send a signature over a notarisation
request in addition to the transaction. This will be logged by the notary
to be able to prove that a particular party has requested the consumption
of a particular state.
2018-02-20 12:09:51 +00:00
Matthew Nesbit
ec93408d24 The IRS demo has a clash between web server ports and the regulator node on port 10010. This bumps the ports up by 1 to fix the issue. (#2562) (#2564) 2018-02-19 14:22:31 +00:00
Mike Hearn
c0448a0e3c Minor: reduce the size of the MockNetwork API a bit, add some better documentation 2018-02-16 18:40:43 +01:00
Maksymilian Pawlak
b87ca85046 Test driver default parameters removal (#2519) (#2525)
* Removed long parameter list in test driver, replaced with DriverParameters object

(cherry picked from commit b91dd43)
2018-02-14 10:24:16 +00:00
Joel Dudley
c9ade00de6 No IdentityServiceInternal as public param. Start nodes without params. Simpler MockServices ctors. (#2521)
* Removes IdentityServiceInternal as a public parameter to MockServices.

* Reorders params to put non-default args first. Creates simpler default constructors.

* Adds constructors for creating mock nodes by passing params.
2018-02-13 11:32:04 +00:00
Maksymilian Pawlak
0b76c5d3f0 Docker system (end-to-end) test (#2437) (#2518)
* System test for IRS Demo utilizing docker, docker-compose and PhantomJS to automate full-stack testing

(cherry picked from commit a9856b9)
2018-02-13 10:23:17 +00:00
Anthony Keenan
e363090f30 CORDA-939 - Don't expose StartedNode and AbstractNode as part of public test api (#2472) (#2505)
* Don't expose StartedNode via Node Driver

* Dont expose StartedNode/Abstract Node via MockNetwork

* Remove internal var from constructor as it doesn't hide from public api and change to internal initialisation method

* Update api

* Rename MockNode to StartedMockNode to avoid confusion
Update documentation
Update api-current.txt

* Fix typo

* Fix test failure

* Modify flow tests to use internal mock network and remove additional internal exposures from StartedMockNode

* Fix api-current

* Change InProcess and OutOfProcess to interfaces

* Explicitly declare MockNetwork parameters
Dont expose StateMachineManager
Move affected tests to use internal mock network

* Fix api-current

* Changes requested via review

* Fix IRS Demo address

* Fix api

* Remove internal attribute from classes in internal package

* Remove accidentally added code

* Move useHttps into NodeHandleInternal

* Remove duplicated code

* Update api-current

* Make webAddress internal on NodeHandle

* Make sure parameters in public api are explicitly specified

* Use correct address in IRS Demo

* Get webaddress from webserver handle

* Update api-current

# Conflicts:
#	.ci/api-current.txt
2018-02-12 13:26:56 +00:00
Andras Slemmer
10f3c0bcf9 CORDA-995: r3corda wire compatibility (#2497) 2018-02-12 10:09:47 +00:00
Patrick Kuo
c18bc8758f CORDA-961 Wire up and enforce max transaction size (#2465) (#2493)
* wire up and enforce max transaction size

* fixup after rebase
moved network parameter from AbstractNode to NodeProperties

* removed TODO

* fix broken import

* address PR issues

* remove API breaking change
address PR issue

* added max transaction size to driver and mock network.
address PR issues

* fix failing test

* added TODO

* fix verifier test

* fix spring driver build error

(cherry picked from commit c8cf46c)
2018-02-09 17:24:15 +00:00
Anthony Keenan
e41408d21e CORDA-939 - Dont expose FlowStateMachine via public API (#2438) (#2476)
* CORDA-939 - Dont expose FlowStateMachine via public API (#2438)

* Create CordaInternal attribute for properties on public classes that are not part of the api and apply to FlowLogic.stateMachine

* Remove startFlow from public test api and replace with startFlowAndReturnFuture

* Update api-current with changed signature

* Change test used in documentation to use public test methods

* Remove the rest of the unneccessary usages of the startFlow test utility

* Remove extra whitespace

* Rename startFlowAndReturnFuture back to startFlow

* Update api

* The annotation doesn't appear unless its marked as on the actual getter and setter

* Updated docs and removed pointless attribute

* Deleted whitespace

# Conflicts:
#	.ci/api-current.txt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/NodeTestUtils.kt

* Revert api-current to v1 api

* Adding missing line and missing annotations

* Made changes post review

* Minor text change
2018-02-08 14:40:16 +00:00
Andras Slemmer
37e207eaf3
Merge pull request #2271 from corda/aslemmer-fix-irsdemo
Fix non-visible IRS demo bug
2018-01-29 11:03:08 +00:00
Andras Slemmer
fca3d565ac Add 'Regulator' node for AutoOfferFlow, fixing IRS 2018-01-26 14:29:35 +00:00
Andras Slemmer
58f76ee2da Put IRS spring whatever back on classpath 2018-01-26 11:21:38 +00:00
Andrius Dagys
e357a88181
Deprecate TimeWindowChecker, make TimeWindowInvalid report exact current time and transaction time window (#2280)
* Make notary service return the current time and the transaction time window
along with the TimeWindowInvalid error.

Deprecate TimeWindowChecker.
Add a static method for validating transaction time window to reduce code duplication.
2018-01-26 09:32:11 +00:00
Andras Slemmer
69bfc9b437 Comment out lines breaking IRS demo 2018-01-25 19:59:24 +00:00
Michele Sollecito
9783f11ba8
Exposed RPC SSL settings through Cordformation (#2419) 2018-01-25 14:32:58 +00:00
Michele Sollecito
142f52fa82
[CORDA:936]: Enable RPC layer to work with SSL 2018-01-23 16:23:37 +00:00
Andrzej Cichocki
1fc646cfa8 CORDA-716 Move test-utils and node-driver to stable API section in docs (#2335)
* Move test-utils and node-driver to stable section.

* Move FlowStackSnapshotFactory to testing.services package & update docs

* Move SerializationTestHelpers to testing.core package

* Move TestConstants.kt to core namespace

* Move Expect.kt to core namespace

* Move CoreTestUtils to core.TestUtils - rename class and update imports

* Added some clarification to documents after re-reading them

* Added static imports

* Removing unused import

* Fix merge conflict

* Fixing merge conflict
2018-01-22 11:28:41 +00:00
Shams Asari
d19eb4a9d7
Removed useHTTPS from NodeConfiguration as it's not needed by the node. (#2375)
It's still expected to be present in node.conf if the web server needs to use SSL.
2018-01-17 17:47:40 +00:00
Anthony Keenan
1367cd4adb
CORDA-912 Stop exposing internal node user, create user in testing infrastructu… (#2361)
* Stop exposing internal node user, create user in testing infrastructure instead

* Update kdocs
2018-01-15 19:30:33 +00:00
Andrius Dagys
fb1d3087de Raft notaries can share a single key pair for the service identity (in contrast to a shared composite public key, and individual signing key pairs). This allows adjusting the cluster size on the fly. 2018-01-13 16:36:41 +00:00
Andrius Dagys
63e1bdaa94 Revert "Raft notaries can share a single key pair for the service identity (i… (#2269)"
This reverts commit 3e00676851.
2018-01-09 12:20:25 +00:00
Andrius Dagys
3e00676851
Raft notaries can share a single key pair for the service identity (i… (#2269)
* Raft notaries can share a single key pair for the service identity (in contrast to a shared composite public key, and individual signing key pairs). This allows adjusting the cluster size on the fly.
2018-01-09 08:17:59 +00:00
Ross Nicoll
412fead02e
CORDA-785: Add functions for constructing FlowLogicRef without the class (#2134)
Add functions for constructing `FlowLogicRef` from class name, rather than requiring the class itself. This avoids requiring that schedulable states have access to the scheduled flow to instantiate, but instead can require it only actually scheduling the flow. This reduces the size of the JAR required to validate transactions containing these states.
2018-01-04 13:32:10 +00:00
Tommy Lillehagen
dd329c860c CORDA-878 - Update IRS demo instructions 2018-01-03 14:19:03 +00:00
Maksymilian Pawlak
5c85e80b17 Restoring apparently missing SIMM demo documentation (#2293)
(cherry picked from commit 2e84bad)
2018-01-02 16:48:08 +00:00
Maksymilian Pawlak
b8421e5028
Increase memory allowance for SIMM demo to pass with external DB on MacOS (#2303) 2018-01-02 09:56:26 +00:00
Shams Asari
4a2f157118
Validating the entire cert path in node registration, rather just checking the root cert. (#2298)
Also reduced duplicate code when creating the node CA cert path for testing, and renamed IdentityGenerator to DevIdentityGenerator.
2017-12-29 14:38:30 +00:00
Shams Asari
39d25958e2
Fixed identity generation of single node notaries as used by the driver and MockNetwork. (#2296)
The identity cert generated used to be of type SERVICE_IDENTITY when it should have been a LEGAL_IDENTITY.
2017-12-28 15:32:09 +00:00
Maksymilian Pawlak
5ce873a6e4 Removed unparseable % sign (#2294)
(cherry picked from commit f05de54)
2017-12-28 09:13:57 +00:00
Maksymilian Pawlak
f8f5639b38 More descriptive error message (#2295) 2017-12-28 09:12:06 +00:00
Shams Asari
e1e715ee81 Removed all remaining special treatment of the X500 common name.
With network parameters the CN is no longer needed to identify notaries. This frees it up to be used in the node's name alongside the other attributes.

Also, the identity generation logic has been simplified, removing the need to have magic string values for storing distributed identities in the keystore. Now there are just two alias prefixes: "identity" as it was previously, and "distributed-notary".
2017-12-18 21:39:11 +00:00
Andrzej Cichocki
8114a20abd
CORDA-716 Move non-API things to internal (#2256) 2017-12-17 18:44:35 +00:00
Andrzej Cichocki
2652ae111a
CORDA-716 Devrel feedback (#2266)
* * Document TestIdentity entropy and enforce that it actually works
* Ledger/transaction DSL default notary with fresh key
* MockServices default identity with fresh key
* makeTestIdentityService now takes vararg
* Require cordappPackages for MockServices
* DSL automatic serialization init
* Improve error when two MockNetworks used

* * Make cordappPackages required by MockNetwork
* Default identity service in MockServices
* Make notarySpecs Java-friendly
2017-12-15 19:18:31 +00:00
Katelyn Baker
8dfe377ae1 Corda-862 - Fix notary demo for AMQP 2017-12-15 10:13:18 +00:00