com.r3corda.core.node / CordaPluginRegistry

CordaPluginRegistry

interface CordaPluginRegistry

Implement this interface on a class advertised in a META-INF/services/com.r3corda.core.node.CordaPluginRegistry file to extend a Corda node with additional application services.



Properties

requiredProtocols abstract val requiredProtocols: Map<String, Set<String>>

A Map with an entry for each consumed protocol used by the webAPIs. The key of each map entry should contain the ProtocolLogic class name. The associated map values are the union of all concrete class names passed to the protocol constructor. Standard java.lang.* and kotlin.* types do not need to be included explicitly. This is used to extend the white listed protocols that can be initiated from the ServiceHub invokeProtocolAsync method.

webApis abstract val webApis: List<Class<*>>

List of JAX-RS classes inside the contract jar. They are expected to have a single parameter constructor that takes a ServiceHub as input. These are listed as Class<*>, because they will be instantiated inside an AttachmentClassLoader so that subsequent protocols, contracts, etc will be running in the appropriate isolated context.

Inheritors

FixingServicePlugin class FixingServicePlugin : CordaPluginRegistry

Register the protocol that is used with the Fixing integration tests.

IRSDemoPluginRegistry class IRSDemoPluginRegistry : CordaPluginRegistry