Commit Graph

111 Commits

Author SHA1 Message Date
Shams Asari
5c53a91785 Overhaul of the Bank of Corda demo to fix two problems it had:
1. The runRPCCashIssue and runWebCashIssue gradle tasks didn't work because they were using the wrong ports
2. Notary lookup was failing because the lookup name didn't include the correct CN for the notary name (this slipped through when reverting the network parameters)

The ports change occurred in  which was attempting the fix the runIssuer gradle task. This is actually a misleading and redundant task as all it does is start up the nodes, which is what the documented deployNodes already does. The ports runIssuer allocated to the nodes were different to the ones specified in deployNodes.

To make sure we have integration tests which closely match deployNodes, the BoC demo has been updated to make use of CordformDefinition. This keeps the node definitions in one place, removing the need to have disparate files in sync. runIssuer has been removed.
2017-11-29 14:48:05 +00:00
Shams Asari
1705df4d1f Made the database config option typesafe, rather than relying on String properties 2017-11-27 13:51:53 +00:00
Shams Asari
953a4a3790 Revert "Introducing network parameters."
This reverts commit d04e487
2017-11-17 10:04:38 +00:00
Shams Asari
2fe41715cc On exit, the driver will automaticallly shutdown any nodes which weren't waited for.
The motivation for this came with the recent change that a default notary is started by the driver, which if ignored will leak the notary process.

Also, waitForAllNodesToFinish() has been replaced by a driver parameter.
2017-11-14 20:20:00 +00:00
Christian Sailer
219433c3cd Hooks for PublicKeySerializer 2017-11-09 14:49:23 +00:00
Shams Asari
a4be26a296 Removed unnecessary calls to MockNetwork.runNetwork (b/c there is no more P2P node registration) and removed redundant entries in cordappPackages 2017-11-06 21:28:20 +00:00
Shams Asari
837e8800e8 Checking that the smoke tests don't have the node on their classpath. 2017-11-02 20:58:03 +00:00
Shams Asari
6ebba9dea1 Removed the startNotary methods from NodeBasedTest, and moved it into an internal package
This commit is in preparation for the upcoming network parameters work.
2017-10-31 11:49:33 +00:00
Maksymilian Pawlak
02a5ddb7df
Remove Bower dependencies from repo and download them on demand ()
Bower dependencies installed by Gradle as a part of deployment
2017-10-30 16:51:38 +00:00
Shams Asari
cde1587ac7 Cleaned up devModeOptions 2017-10-28 13:26:06 +01:00
Mike Hearn
d7e4aa1783 Add more formal support for observer/regulator nodes. This is a simplistic
approach which assumes a dedicated node for observers: states that are
reported to the node will appear in the database and update feeds as
normal. Apps that expect all updates to be relevant to themselves may
need adjusting if they run on an observer node too, but this is likely
to be rare.
2017-10-26 18:05:24 +02:00
Maksymilian Pawlak
44a7d872d8 IRS Demo - split IRS Demo into two separate applications to showcase … ()
* IRS Demo - split IRS Demo into two separate applications to showcase the separation and usage of RPC client
2017-10-25 16:40:21 +01:00
Viktor Kolomeyko
cbb5135097 Fixing Bank-Of-Corda Demo in master ()
* Fix-up: Bank Of Corda sample

Use correct CorDapp packages to scan

(cherry picked from commit 2caa134)

* Set adequate permissions for the nodes such that NodeExplorer can connect

(cherry picked from commit ae88242)

* Set adequate permissions for the nodes such that NodeExplorer can connect

(cherry picked from commit ae88242)

* Correct run configuration

* Fix-up port numbers
2017-10-23 15:04:25 +01:00
Viktor Kolomeyko
99b509cb68 Attempting to make VerifierTests more stable ()
* Attempting to make VerifierTests more stable

Main point: Alice node will always be faster to locate Alice by name than NotaryNode. Especially given that it may take some time
for Alice node to get reflected on the Notary's NetworkMap.

Also additional logging which might be helpful during debug and IntelliJ changed project structure reflection.

* Introduce a way for nodes to reliably learn about each other existence in the NetworkMap

Plus minor refactoring of the Driver code.
2017-10-16 09:16:40 +01:00
Shams Asari
bd53a22efa Removed extraAdvertisedServiceIds config
The remaining use for it was the finance CorDapp for permissioning CCY issuers. Instead this is now taken from a custom config in node.conf.
2017-10-10 13:47:37 +01:00
Clinton
484cf75420 CORDA-686 - Split Cordapp gradle plugin from cordformation ()
Added CorDapp gradle plugin written in Kotlin and bumped the version of gradle plugins to 2.0.0 to reflect that this backwards incompatible change is a part of the on going stabilisation of the Corda gradle plugin suite.
2017-10-09 20:08:08 +01:00
Viktor Kolomeyko
20a30b30da Initial stub for IntelliJ Code Style settings ()
* Initial stub for IntelliJ Code Style settings

* Added exclusion to ".gitignore"
2017-10-09 13:24:17 +01:00
Clinton
334164aa86 Fixed several bugs in the contract constraints work ()
* Added schedulable flows to cordapp scanning
* Fixed a bug where the core flows are included in every cordapp. 
* Added a test to prove the scheduled flows are loaded correctly. 
* Enabled a negative test to prove that we are not currently dynamically loading attachment classes from the network.
2017-09-27 18:34:17 +01:00
Mike Hearn
7a082a6598 Add an IntelliJ scope that covers the currently supported Corda API.
This is useful when used in combination with the "Highlight public
declarations with missing KDoc" inspection.
2017-09-27 11:47:34 +02:00
Viktor Kolomeyko
f43702fe3d CORDA-611: Improve documentation for Node Explorer ()
Also align the name for run configuration for Node Explorer GUI
2017-09-22 17:36:03 +01:00
Ross Nicoll
22be9fd6df CORDA-579: Move X509EdDSAEngine into net.corda.core.internal package ()
* Add reflection based X509EdDSAEngine

* Rewrite X509EdDSAEngine to use public API rather than the direct equivalent functions

* Add unit tests for X509EdDSAEngine

* Remove unused imports

* Add unit tests for X509Key verification

* Add explicit x509 construct from eddsa key

This allows testing of conversion engine

* Review Comments
2017-09-21 18:18:37 +01:00
Shams Asari
8e0b8477af Changed FlowLogic.ourIdentity to return Party and added FlowLogic.ourIdentityAndCert which returns PartyAndCertificate. ()
Updated code base to make use of these instead of chooseIdentity(). Also improved the serialisation of fiber checkpoints so that it doesn't store the entire cert parth of this identity.
2017-09-18 15:28:23 +01:00
Michele Sollecito
ea61e6e9d5 [CORDA-461] Remove deprecated APIs. ()
https://r3-cev.atlassian.net/browse/CORDA-461
2017-09-13 15:39:39 +01:00
Clinton
1ef4cec0cd Add Cordapp class to define CorDapps inside Corda and encapsulate Cordapp loading ()
Introduced a Cordapp class which contains all relevant information about a Cordapp. The Cordapp loader now produces Cordapps instead of lists of classes and services without any relation to the original Cordapp. 

Added new static constructor to CordappLoader to be able to take arbitrary paths to load cordapps from in dev mode. 

Moved the CordappLoader into the cordapp package.
2017-09-13 14:07:50 +01:00
Clinton
bc6628a072 ContractState now references contract by class name ()
* ContractState's contract type has been moved to TransactionState and is now a string representing the class name of the contract class to allow classloading of arbitrary contracts from custom classloaders.

* Upgraded isolated JAR to new version.
2017-09-11 16:44:18 +01:00
Shams Asari
c293d6b18a Added check to receive and sendAndReceive to make sure the primitive classes aren't used () 2017-09-07 11:46:35 +01:00
Andrzej Cichocki
579abda044 Group test scope modules in testing dir () 2017-09-05 18:27:26 +01:00
Viktor Kolomeyko
a01f390515 CORDA-540: Upgrade version of "org.apache.qpid:proton-j" used and minor project files changes 2017-09-05 16:50:04 +01:00
Andrzej Cichocki
15f741f315 Spinoff driver into own project with demorun () 2017-09-05 09:50:51 +01:00
josecoll
b63df0ea39 Vault Service API final clean-up ()
* Remove notify/notifyAll from public Vault Service API.

* 1st pass - remove ContractUpgrade public API calls from VaultService into self contained ContractUpgradeService.

* Fix compile error caused by cut'n'paste refactoring.
2017-08-31 14:01:10 +01:00
Andras Slemmer
e9f3b92e97 Add alwaysExcluded flag to quasar-hook, run config for generating exclude pattern 2017-08-30 17:14:01 +01:00
Shams Asari
1a879df0e7 Attempting to initiate flow that's not in the destination's classpath returns back a session reject 2017-07-28 10:22:26 +01:00
Andrzej Cichocki
0aadc037ef Make logging available in IntelliJ between gradle clean and assemble ()
* Enforce absence of node from client rpc smokeTest classpath
2017-06-28 09:54:09 +01:00
Shams Asari
b52d3706eb Moved Driver.kt to net.corda.testing.driver in the test-utils module 2017-06-14 15:12:39 +01:00
Shams Asari
afa3efb308 Fixes relating to testing flows and services.
Fixed issue where Corda services installed in unit tests were not being marked as serialise as singleton. Also the driver now automatically picks up the scanning annotations. This required moving the NodeFactory used in smoke tests into a separate module.
2017-06-06 15:22:43 +01:00
Andrzej Cichocki
bbe4c170c2 BFT notary demo ()
* Rename raft-notary-demo project to notary-demo
* Refactor serialisation filtering to allow BFT SMaRt to work, it no longer relies on the jdk.serialFilter system property
* In NodeBasedTest remove whitespace in node directory names for consistency with cordform and driver
2017-05-24 12:25:06 +01:00
Andrzej Cichocki
c8d71a96f5 One demo definition for both IntelliJ and gradle ()
* Raft notary demo now defined in one place that both IntelliJ/driver and gradle/runnodes can run
* New module cordform-common for code common to cordformation and corda
* Add single notary demo
2017-05-18 15:58:35 +01:00
Shams Asari
fe03680fdd Cleanup of the irs demo 2017-05-18 12:16:35 +01:00
Shams Asari
47c6b9c135 Making use of latest FastClasspathScanner version and cleanup of CollectSignaturesFlow.kt 2017-05-12 10:33:43 +01:00
Mike Hearn
b5dea88b39 Sync .idea/compiler.xml with Gradle 2017-05-08 14:11:34 +02:00
Rick Parker
18a0df4239 AMQP serialisation: Part 1 ()
Also turns on `-parameters` for java compiler
2017-05-05 12:14:02 +01:00
Chris Rankin
b597f05bd4 Delete IntelliJ RunConfiguration files for the demos. () 2017-04-25 14:22:04 +01:00
Ross Nicoll
486368d926 Clean up messaging/RPC port configuration and docs ()
* Non-ssl artemis acceptor for RPC connection. ()

* New non-ssl acceptor in artemis server for RPC connection.

* Rename artemisAddress with messagingAddress

Rename artemisAddress with messagingAddress so that the node configuration file properties match
the code variable names.
Rename artemisPort to messagingPort in Gradle configuration to match node configuration naming.

* Add rpcPort configuration option for Gradle

* Update docs to reflect changes to RPC port configuration

* Renumber ports in example CorDapp to match numbering used elsewhere

* Restructure upgrade guide

* added config file checks on corda startup to make the upgrade path a bit smoother.
2017-03-17 10:32:14 +00:00
Shams Asari
b4b0e63c0d Removed Intellij dictionary file 2017-03-08 10:19:41 +00:00
Andrius Dagys
bbcaf5d98c Demo bug fixes ()
* 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-07 17:18:21 +00:00
Clinton Alexander
e6da4909d3 Trader demo IntelliJ configurations and driver updated to work with the new RPC style demo. 2017-01-17 14:17:31 +00:00
Mike Hearn
b3fa9d62c1 Make the attachments demo IntelliJ run configs work again. 2017-01-09 15:55:02 +01:00
Mike Hearn
9a75adb0ab Simplify the attachments demo by getting rid of the web API and just using the RPC interface directly. The web API in this case wasn't actually adding anything that had to be server side. 2017-01-06 16:58:34 +01:00
Clinton Alexander
8a33b6b223 Renamed distributed and notary demo to 'Raft Notary Demo' to improve consistency in naming. 2017-01-05 11:43:24 +00:00
josecoll
eac2cb1cc6 Bank of Corda integration with Trader Demo and Explorer
Initial conversion of Explorer to use IssuerFlow (from BankOfCorda)

Initial conversion of TraderDemo to use IssuerFlow (from BankOfCorda)

Updated TraderDemo to use IssuerFlow (from BankOfCorda)

Fixed TraderDemo integration text (added new BankOfCorda node)

Updated Explorer with changes IssuerRequest params

Explorer now correctly displaying transaction id upon Issue.

Moved IssuerFlow into finance package so can be reused across multiple demos (TraderDemo) and applications (eg Explorer)

Refactored BankOfCorda demo to use Finance package and TestUtil constants

Updated TraderDemo to use IssuerFlow

Updated Explorer to use finance package IssuerFlow.

Advertised BankOfCorda as Issuer for usage by Explorer.

Explorer no longer depends on BankOfCorda demo since IssuerFlow promoted to Finance module

Added IssuerFlow to AbstractNode whitelist.
Explicit declarations of IssuerFlow no longer required.

Added plugin registration of IssuerFlow at bootstrap.

Revert whitelisting of IssuerFlow (plugin configured)

Refactored to use constant BOC definition.

Added gradle RPC security config.

Updated documentation

Fixed incorrect references.

Renamed Issuer banks.
Added new permission set (for Issuer nodes)
Added node nearestCity info
Added new Issuer Event Generator for Issuer nodes only

Associated currency with issuer using ServiceType naming structure.

Added argument flag (-S) to trigger event generator simulation node.

Fixed problem with issuers not resolving from network map.

Updated perms on Issuer rpc proxy nodes.

Fixed minor in cash generateExit identified by Explorer.

Changes applied in prep for AWG demo.

Added IntelliJ run-configurations for launching Explorer demo nodes (with and without simulation)

Updated documentation (and added additional gradle task to launch Explorer nodes in simulation mode).

Fix following rebase.

Addressed review items from PR.

Updated TraderDemo readme.

Updated TraderDemo gradle file to launch Bank of Corda node.

Updated JRE properties.

Updated IssuerModel to incorporate correct JFX Observable handling.
Fixed bug with Exit command not displaying any currency.

Added TODO's for revisiting correct Exception handling strategy.

Optimization for when issuing cash to self.

Minor updates following PR review.

Remove old refs to Royal Mint and Federal Reserve
2016-12-22 15:55:50 +00:00