Commit Graph

666 Commits

Author SHA1 Message Date
aff5148c9b Add support for contract upgrades (#165)
* Add support for contract upgrades
* Add interface for the upgraded contract to implement, which provides functionality for upgrading legacy states.
* Add shared upgrade command and verification code for it.
* Add DummyContractV2 to illustrate what an upgraded contract looks like.
* Add new functions to vault service to support upgrading state objects.
* Add contract upgrade flow
2017-02-13 17:50:05 +00:00
ef52014504 Updated the notice
... to the last version reviewed & approved by legal counsel
2017-02-13 17:50:05 +00:00
bbb6650632 Capsule fat JAR now contains a CDDL notice. 2017-02-13 17:50:05 +00:00
71182ec8c1 End flow if waiting for ledger commit and committer flow errors 2017-02-13 17:50:05 +00:00
3c0d6fd14f Split CashFlow into three flows
Split CashFlow into independent CashIssueFlow, CashExitFlow and CashPaymentFlow,
so that users can be given access to one but not the other(s).

Signed-off-by: Ross Nicoll <ross.nicoll@r3.com>
2017-02-13 17:50:05 +00:00
a9d9441411 Add AnonymousParty superclass of Party
Add AnonymousParty superclass of Party in preparation for anonymising parties stored in
contract states.

Signed-off-by: Ross Nicoll <ross.nicoll@r3.com>
2017-02-13 17:50:05 +00:00
e737fa5e9f Demo bug fixes (#217)
* Add webAddress back to NMS as it shifts the port allocation for all subsequent nodes and causes all demos to break.

* Attachment demo: fix node names

* Notary demo: fix certificate paths & ports

* IRS demo: role decider fixed to allocate roles properly. Previously it used to pick current node as the Fixer, causing both nodes to initiate the trade flow, resulting in double spend exceptions..
2017-02-13 17:50:03 +00:00
26ddf5927d FlowException can be thrown from within UntrustworthyData.unwrap for better Java interop, and more checked exception annotations relating to flows 2017-02-13 17:50:03 +00:00
8cb27f1052 Switch to using CompositeKey inside network map cache
Switch to using CompositeKey inside network map cache, so that look up of node info from keys
can be done in a more sensible manner.
2017-02-13 17:50:03 +00:00
12de4f46b1 Minor: suppress deprecation warning in CordaRPCOpsImpl 2017-02-13 17:50:03 +00:00
f3c9b458fd Improve the flow commit API.
Make FinalityFlow do more, and be used more consistently.

Add a new waitForLedgerCommit API that is intended to be used at the end of flows, or at any other point where a flow wants to wait for a transaction to finalise (but the finalisation flow is being done by someone else).

Update the docs a bit.
2017-02-13 17:50:03 +00:00
4b96fe2502 Cleaned up logging in the webdriver to remove log that fails to display correctly on Windows. 2017-02-13 17:50:02 +00:00
0c1a6aad6b Include fix for NPEs with RPC exceptions. 2017-02-03 11:46:54 +00:00
b86c80691e FlowException serialised over RPC (subtypes are flattened), and improvement to startFlow RPC for correct exception handling 2017-02-03 11:21:10 +00:00
56dbf1e844 Prevent node from starting across upgrades (until we support it better) (#199)
* Prevent node from starting across upgrades (until we support it better).

On first run a version file is created in the node dir, and on subsequent runs the node version is matched against it.

* Move version check from caplet to node.
2017-02-02 18:21:00 +00:00
bc9407d2c8 Correct network map cache tests
InMemoryNetworkMapCacheTest was not actually asserting that an expected exception was thrown, which
meant when earlier changes to the service changed the operation it wasn't caught. The service now
overwrites previous node if a new matching node is added, and this updates the test to follow that
design.
2017-02-02 16:01:10 +00:00
c7a045c82a Merge remote-tracking branch 'corda-public/master' 2017-02-02 14:00:32 +00:00
2f9af7d7dc Revert Party.Full in preference for a less invasive change 2017-02-02 13:47:32 +00:00
4afd404db4 Address PR 207 comments 2017-02-02 11:44:18 +00:00
de63f90745 Add isRegisteredWithNetworkMap RPC, poll in Driver, expose RPC proxy 2017-02-02 10:54:50 +00:00
3f6c8ab1e2 Allow received FlowException to propagate further to initiating flow 2017-02-01 17:30:38 +00:00
1b86ddfd6e Replace Party with Party.Full
Replace Party with Party.Full as an interim step to introducing the Party.Anonymised class.

Signed-off-by: Ross Nicoll <ross.nicoll@r3.com>
2017-02-01 15:18:12 +00:00
d376a902ad Merge pull request #180 from corda/clint-webserversplit
Split webserver from node
2017-02-01 12:13:31 +00:00
7f96b752d1 Added reconnect capability to RPC (#192)
* Added reconnect capability to RPC
* Issue - https://github.com/corda/corda/issues/184
* JIRA - https://r3-cev.atlassian.net/browse/CORDA-189
2017-01-31 17:04:05 +00:00
876bae67cb Added TODOs for future splitting of the web server from the node. 2017-01-31 16:03:34 +00:00
646ce8afe0 FlowException thrown by a flow is propagated to all counterparties 2017-01-31 13:30:33 +00:00
e8015e689a Flows shouldn't have to suspend if just doing a send (#187)
* CORDA-45 Flows shouldn't have to suspend if just doing a send
2017-01-30 16:21:43 +00:00
e383752995 Adapt Party comparison to use owningKey
Change Party instances to be uniquely identified by the owning key, without taking into account name.
This requires that mock node key generation is reworked so that keys for services and the node itself
are distinct, otherwise the network map service cannot differentiate them.

Signed-off-by: Ross Nicoll <ross.nicoll@r3.com>
2017-01-30 15:46:51 +00:00
e54d6388fd Adding optional delay to AMQ message sending via system properties (#185) 2017-01-30 14:39:40 +00:00
a5f6fb9479 Querying of node and webserver now uses infinite retries to avoid any race conditions. 2017-01-30 12:08:41 +00:00
d2ebcbfab0 Fixed whitespace and formatting with IntelliJ autoformat tool. 2017-01-30 12:05:22 +00:00
65b29a8379 Moved the transaction context into the RPC call site. 2017-01-30 11:21:01 +00:00
3482452c8b Added webserver to runnodes. 2017-01-27 14:15:08 +00:00
13551a6b23 Runnodes now works with the new separate webserver. 2017-01-27 14:14:38 +00:00
537ffae113 Moved file uploading to RPC interface. 2017-01-27 14:13:58 +00:00
d4b6e32682 t # This is a combination of 5 commits.
Driver now queries webserver to ensure it has started.
2017-01-27 14:13:29 +00:00
5f4d4c1da3 Moved the webserver code into the main node module. Driver can now start webserver for nodes. 2017-01-27 14:12:54 +00:00
ecfb762143 Nodes can start without web server. Webserver now uses full node configuration. 2017-01-27 14:12:19 +00:00
fa257738e1 Added webserver project. 2017-01-27 14:10:18 +00:00
f2df9d36fa Merge remote-tracking branch 'corda-public/master' 2017-01-26 10:16:47 +00:00
1362a305c9 Expand details provided when erroring due to missing signatures in notary flow
Signed-off-by: Ross Nicoll <ross.nicoll@r3.com>
2017-01-25 16:15:40 +00:00
a4254ac695 Remove TransferRecipient
Remove TransferRecipient from StateMachineManagerTests to get rid one of the approximately 6 different ways
in which we refer to endpoints, as part of work to simplify this data model.

Signed-off-by: Ross Nicoll <ross.nicoll@r3.com>
2017-01-25 15:32:03 +00:00
1229c429a4 Rename file to correct reference to protocol -> flow 2017-01-25 13:21:42 +00:00
20fe0f32f2 Removed "Node" prefix from NodeSSLConfiguration and renamed two file properties to end in "File" 2017-01-23 15:46:36 +00:00
052a660c1b Making sure exceptions thrown while fibers are suspended are handled properly 2017-01-23 15:39:55 +00:00
e9345e2999 Set h2 write delay to 100ms to improve performance 2017-01-20 12:03:00 +00:00
aeb5a59605 Add logging to node startup when it attempt to connect to the map server (#167)
* Add logging to avoid node startup "hang" when it attempt to connects to the network map, also can use as a hint telling user Network map might be down or unreachable.
2017-01-20 11:34:32 +00:00
c4e3b258c7 Introducing Observable.toFuture() extension method 2017-01-17 12:56:59 +00:00
ca1b08ad37 Node memory leak fix (#152)
Perform Artemis message sending in a separate thread pool to avoid memory leaks
2017-01-13 18:29:56 +00:00
6b7edf5af6 Tx validation detect duplicate inputs (#138)
* Move duplicate input detection to transaction verification

Duplicate detection was previously part of the NotaryFlow.
2017-01-13 11:37:28 +00:00