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.finance.workflows.asset.selection.AbstractCashSelection
.
(extensions in package net.corda.finance)
RPC client side interface for RPC audit data retrieval and removal
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.
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 docs.corda.net 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<CordaRPCOps>
and can be treated identically.
(extensions in package net.corda.finance.workflows)
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.
(extensions in package net.corda.finance)
(extensions in package net.corda.finance)
Underlying interface for the driver DSL. Do not instantiate directly, instead use the driver function.
Builder for configuring a driver.
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
(extensions in package net.corda.testing.flows)
State of the flow on latest checkpoint
Defines filters to lists flows with a checkpoint in the node that have not completed
Defines filters to lists flows with a checkpoint in the node that have not completed
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.
(extensions in package net.corda.finance)
Defines how the flow was started
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.
(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.
(extensions in package net.corda.finance)
(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.
An RPC client connects to the specified server and allows to make calls using specified remote interface to the server that perform various
useful tasks. Please see the Client RPC section of Corda Documentation to learn more about how this API works.
Only a brief description is provided here.
An RPC extension which provides access to the FlowHospital
A base interface which represents a node as part of the driver dsl, extended by InProcess and OutOfProcess
RPC client side interface for health check data retrieval.
Parameters for creating a node for DriverDSL.startNode.
An RPC extension which provides access to the Node Status
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.
(extensions in package net.corda.client.rpc)
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.
A listener that can be attached to MultiRPCClient to be notified about important RPC connectivity events.
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.
(extensions in package net.corda.finance.workflows)
(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 objects usually to support
representation of a query object pattern. 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 queries in the Corda shell.
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.
Reason why the flow was suspended
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.
(extensions in package net.corda.testing.flows)
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.
(extensions in package net.corda.client.jackson)
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.