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.
RPC client interface to Corda, for use both by user-facing client and integration with external systems.
Internal, do not use. These APIs and implementations which are currently being revised and are subject to future change.
Exception types and some utilities for working with observables and futures.
Provides a simplified java.util.concurrent.Future class that allows registration of a callback to execute when the future is complete.
This package contains the base data types for smarts contracts implemented in Corda. To implement a new contract start with
This package contains the interface to CorDapps from within a node. A CorDapp can access it's own context by using the CordappProvider.getAppContext() class. These classes are not intended to be constructed manually and no interface to do this will be provided.
Cryptography data and utility classes used for signing, verifying, key management and data integrity checks.
Data classes which model different forms of identity (potentially with supporting evidence) for legal entities and services.
Data types used by the Corda messaging layer to manage state of messaging and sessions between nodes.
Services which run within a Corda node and provide various pieces of functionality such as identity management, transaction storage, etc.
Supporting data types for the vault services.
Data types representing database schemas for storing Corda data via an object mapper such as Hibernate. Modifying Corda state in the database directly is not a supported approach, however these can be used to read state for integrations with external systems.
Supporting data types and classes for serialization of Corda data types.
Base data types for transactions which modify contract state on the distributed ledger.
Corda utility classes, providing a broad range of functionality to help implement both Corda nodes and CorDapps.
Some simple testing utilities like pre-defined top-level values for common currencies. Mostly useful for writing unit tests in Kotlin.
Various types for common financial concepts like day roll conventions, fixes, etc.
Cash states, obligations and commodities.
Provisional support for pluggable cash selectors, needed for different database backends.
Splines and interpolation.
Cash payments and issuances. Two party "delivery vs payment" atomic asset swaps.
JSON/Jackson plugin for business calendars.
JPA (Java Persistence Architecture) schemas for the financial state types.
A collection of utilities for summing financial states, for example, summing obligations to get total debts.