All Types

Initiates a flow that produces an Issue/Move or Exit Cash transaction.

Pluggable interface to allow for different cash selection provider implementations Default implementation in finance workflow module uses H2 database and a custom function within H2 to perform aggregation. Custom implementations must implement this interface and declare their implementation in META-INF/services/

net.corda.core.contracts.Amount (extensions in package

Initiates a flow that produces an cash exit transaction.

Initiates a flow that self-issues cash and then send this to a recipient.

Initiates a flow that self-issues cash (which should then be sent to recipient(s) using a payment transaction).

Initiates a flow that sends cash to a recipient.

An object used to fully qualify the CashSchema family name (i.e. independent of version).

Abstract class specifying information about the consensus algorithm used for a cluster of nodes.

kotlin.collections.Collection (extensions in package net.corda.testing.core)

Signals that the underlying RPCConnection dropped.


An RPC client connects to the specified server and allows you to make calls to the server that perform various useful tasks. Please see the Client RPC section of to learn more about how this API works. A brief description is provided here.


Can be used to configure the RPC client connection.


This class is essentially just a wrapper for an RPCConnection and can be treated identically.

net.corda.core.messaging.CordaRPCOps (extensions in package

Thrown when a flow start command died before receiving a net.corda.core.messaging.FlowHandle. On catching this exception, the typical behaviour is to run a "logical retry", meaning only retry the flow if the expected outcome did not occur.

java.util.Currency (extensions in package
kotlin.Double (extensions in package

Underlying interface for the driver DSL. Do not instantiate directly, instead use the driver function.


Builder for configuring a driver.


Trivial implementation of TypeOnlyCommandData for test purposes


Dummy contract for testing purposes. Doesn't do anything useful.


Dummy contract state for testing of the upgrade process.


Dummy contract state for testing of the upgrade process.


Dummy state for use in testing. Not part of any contract, not even the DummyContract.


If you jumped here from a compiler error make sure the last line of your test tests for a transaction verify or fail. This is a dummy type that can only be instantiated by functions in this module. This way we can ensure that all tests will have as the last line either an accept or a failure test. The name is deliberately long to help make sense of the triggered diagnostic.

SQL Server / SQL Azure


Part of the Expectation DSL

net.corda.core.flows.FlowLogic (extensions in package net.corda.testing.flows)

GracefulReconnect provides the opportunity to perform certain logic when the RPC encounters a connection disconnect during communication with the node.


A small set of utilities for making HttpCalls, aimed at demos and tests.


An in-memory network allows you to manufacture MockNodeMessagingServices for a set of participants. Each MockNodeMessagingService maintains a queue of messages it has received, and a background thread that dispatches messages one by one to registered handlers. Alternatively, a messaging system may be manually pumped, in which case no thread is created and a caller is expected to force delivery one at a time (this is useful for unit testing).


Interface which represents an in process node and exposes available services.

kotlin.Int (extensions in package
kotlin.collections.Iterable (extensions in package net.corda.testing.core)

Utilities and serialisers for working with JSON representations of basic types. This adds Jackson support for the java.time API, some core types, and Kotlin data classes.


A class containing configuration information for Jolokia JMX, to be used when creating a node via the driver.

kotlin.reflect.KClass (extensions in package net.corda.testing.flows)

This is the class that defines the syntactic sugar of the ledger Test DSL and delegates to the contained interpreter, and what is actually used in ledger { (...) }. Add convenience functions here, or if you want to extend the DSL functionality then first add your primitive to LedgerDSLInterpreter and then add the convenience defaults/extension methods here.


This interface defines the bare bone functionality that a Ledger DSL interpreter should implement.

kotlin.Long (extensions in package
kotlin.collections.Map (extensions in package net.corda.testing.flows)

Thrown to indicate an RPC operation has been retried for the maxNumberOfRetries unsuccessfully.

A mock implementation of AttachmentStorage for use within tests


MockNetFlowTimeOut can be used to configure flow time out settings for a node via the mock network API.


MockNetNotaryConfig can be used to configure a node to be a notary via the mock network API. Internally this will be translated into a NotaryConfiguration and passed to the respective node.


A mock node brings up a suite of in-memory services in a fast manner suitable for unit testing. Components that do IO are either swapped out for mocks, or pointed to a Jimfs in memory filesystem or an in memory H2 database instance.


The spec for a notary which will used by the MockNetwork to automatically start a notary node. This notary will become part of the network parameters used by all the nodes.


Immutable builder for configuring a MockNetwork.


This is a data class to configure overrides to the node configuration used in the mock network without having to expose/use the actual (internal) node configuration interface on the API. When passing one of these to createNode or createUnstartedNode functions, the bits that are set will be injected into the node configuration for the node to be created.


Immutable builder for configuring a StartedMockNode or an UnstartedMockNode via MockNetwork.createNode and MockNetwork.createUnstartedNode. Kotlin users can also use the named parameters overloads of those methods which are more convenient.


An implementation of ServiceHub that is designed for in-memory unit tests of contract validation logic. It has enough functionality to do tests of code that queries the vault, inserts to the vault, and constructs/checks transactions. However it isn't enough to test flows and other aspects of an app that require a network. For that you should investigate MockNetwork.


A base interface which represents a node as part of the driver dsl, extended by InProcess and OutOfProcess

net.corda.core.node.NodeInfo (extensions in package net.corda.testing.core)

Parameters for creating a node for DriverDSL.startNode.


Object ecapsulating a notary started automatically by the driver.


A notary spec for describing a notary which will be started automatically by the driver and which will be part of the network parameters used by all the nodes.
rx.Observable (extensions in package net.corda.client.rpc)
rx.Observable (extensions in package net.corda.testing.core)

Interface which represents an out of process node and exposes its process handle.


This interface defines output state lookup by label. It is split from the interpreter interfaces so that outputs may be looked up both in ledger{..} and transaction{..} blocks.


Thrown to indicate that the calling user does not have permission for something they have requested (for example calling a method).


Holds a proxy object implementing I that forwards requests to the RPC server. The server version can be queried via this interface.


Thrown to indicate a fatal error in the RPC system itself, as opposed to an error generated by the invoked method.


Records the protocol version in which this RPC was added.

First version of a cash contract ORM schema that maps all fields of the Cash contract state as it stood at the time of writing.

Second version of a cash contract ORM schema that extends the CommonSchemaV1.FungibleState abstract schema.

First version of a cash contract ORM schema that maps all fields of the Cash contract state as it stood at the time of writing.


A test serialization rule implementation for use in tests

net.corda.core.node.ServiceHub (extensions in package
net.corda.core.node.ServiceHub (extensions in package net.corda.testing.node)

A class that represents a started mock node for testing.


This class parses strings in a format designed for human usability into ParsedMethodCall objects representing a ready-to-invoke call on the given target object. The strings accepted by this class are a minor variant of Yaml and can be easily typed at a command line. Intended use cases include things like the Corda shell, text-based RPC dispatch, simple scripting and so on.


A Clock that can have the time advanced for use in testing.


Encapsulates a CorDapp that exists on the current classpath, which can be pulled in for testing. Use TestCordapp.findCordapp to locate an existing CorDapp.


A class that encapsulates a test identity containing a CordaX500Name and a KeyPair, alongside a range of utility methods for use during testing.


This interpreter builds a transaction, and TransactionDSL.verifies that the resolved transaction is correct. Note that transactions corresponding to input states are not verified. Use LedgerDSL.verifies for that.


Underlying class for the transaction DSL. Do not instantiate directly, instead use the transaction function.


This interface defines the bare bone functionality that a Transaction DSL interpreter should implement.

Classes for manipulating a two party deal or agreement.

This asset trading flow implements a "delivery vs payment" type swap. It has two parties (B and S for buyer and seller) and the following steps:

Thrown to indicate a fatal error in the RPC system which cannot be recovered from and so needs some manual support.


A class that represents an unstarted mock node for testing.


Object encapsulating a node rpc user and their associated permissions for use when testing using the driver


This interface asserts that the DSL at hand is capable of verifying its underlying construct(ledger/transaction).


Class which represents a handle to a webserver process and its NetworkHostAndPort for testing purposes.