CSDE Overview

This section provides an overview of the content of CSDE. It contains the following:
Project Structure

On the left, you can see the folder structure created, ready for CorDapps development.
For Kotlin, write your flow
Communication between participants in an application network is peer-to-peer using flows.
code in workflows/src/main/kotlin/<your package path>
and your contract and states
An immutable object representing a fact known by one or more participants at a specific point in time. You can use states to represent any type of data, and any kind of fact.
code in /contracts/src/main/kotlin/<your package path>
.
For Java, use workflows/src/main/java/<your package path>
and your contract and states code in /contracts/src/main/java/<your package path>
.
For test code, use the corresponding test folder.
Gradle Helpers for the Combined Worker

On the right, you can see the Gradle tasks that we have included to help you work with a local deployment of Corda using the combined worker:
The helpers are split into three folders:
csde-corda

These tasks help with the lifecycle of your local Corda cluster.
Helper | Description |
---|---|
startCorda | 1. Downloads a copy of the combined worker JAR, if required. 2. Starts an instance of a Postgres Docker container. You will need Docker Engine or Docker Desktop running. 3. Starts the combined worker. The Combined Worker will continue to run in a ‘Run’ Console until it is shut down. Note, Corda takes about one minute to start up. It is best to poll the cluster with one of the csde-query helpers until it responds to confirm if the cluster is live and ready to interact. |
stopCorda | 1. Stops the Postgres database. 2. Stops the combined worker. |
csde-cordapp

Each of these tasks has a dependency on the previous. So, if you run 3, it also runs 1 and 2.
5-vNodeSetup
the first time you upload your CPI to the corda cluster. On subsequent builds, you can just run 4-deployCPIs
. (5-vNodeSetup
has no effect if the virtual nodes have already been set up. It will not try to recreate them.)csde-queries

These are standard queries that are useful to run against your Corda cluster.
Helper | Description |
---|---|
listVNodes | Queries the Corda cluster and returns the list of vnodes. This includes the ShortHash that you need for running flows. |
listCPIs | Queries the Corda cluster and returns the list of CPIs uploaded. |
Debug Configuration

In the toolbar, you can select the DebugCorDapp
run configuration to debug the running Corda from IntelliJ.

Was this page helpful?
Thanks for your feedback!
Chat with us
Chat with us on our #docs channel on slack. You can also join a lot of other slack channels there and have access to 1-on-1 communication with members of the R3 team and the online community.
Propose documentation improvements directly
Help us to improve the docs by contributing directly. It's simple - just fork this repository and raise a PR of your own - R3's Technical Writers will review it and apply the relevant suggestions.
We're sorry this page wasn't helpful. Let us know how we can make it better!
Chat with us
Chat with us on our #docs channel on slack. You can also join a lot of other slack channels there and have access to 1-on-1 communication with members of the R3 team and the online community.
Create an issue
Create a new GitHub issue in this repository - submit technical feedback, draw attention to a potential documentation bug, or share ideas for improvement and general feedback.
Propose documentation improvements directly
Help us to improve the docs by contributing directly. It's simple - just fork this repository and raise a PR of your own - R3's Technical Writers will review it and apply the relevant suggestions.