Skip to content

com.github.manosbatsis.corda.rpc.poolboy.config / NodeParams

NodeParams

data class NodeParams

Configuration of a single node from an RPC perspective, i.e. information corresponding to RPC user credentials and an CordaRPCClientConfiguration. The DEFAULTS are taken from CordaRPCClientConfiguration.DEFAULT and can be overridden using corbeans.nodes.default.xx in your application.properties

Constructors

Name Summary
<init> NodeParams(partyName: String? = null, username: String? = null, password: String? = null, address: String? = null, adminAddress: String? = null, eager: Boolean? = null, trustStorePath: String? = null, trustStorePassword: String? = null, trustStoreProvider: String = "JKS", disableGracefulReconnect: Boolean? = null, connectionMaxRetryInterval: Duration? = null, connectionRetryInterval: Duration? = null, connectionRetryIntervalMultiplier: Double? = null, deduplicationCacheExpiry: Duration? = null, maxFileSize: Int? = null, maxReconnectAttempts: Int? = null, minimumServerProtocolVersion: Int? = null, observationExecutorPoolSize: Int? = null, reapInterval: Duration? = null, trackRpcCallSites: Boolean? = null, skipInfo: Boolean? = null, customSerializers: Set<SerializationCustomSerializer<*, *>>? = null)
Configuration of a single node from an RPC perspective, i.e. information corresponding to RPC user credentials and an CordaRPCClientConfiguration. The DEFAULTS are taken from CordaRPCClientConfiguration.DEFAULT and can be overridden using corbeans.nodes.default.xx in your application.properties

Properties

Name Summary
address var address: String?
Node RPC address
adminAddress var adminAddress: String?
Node administration RPC address
connectionMaxRetryInterval var connectionMaxRetryInterval: Duration?
The maximum retry interval for re-connections. The client will retry connections if the host is lost with ever increasing spacing until the max is reached. The default is 3 minutes.
connectionRetryInterval var connectionRetryInterval: Duration?
  • The base retry interval for reconnection attempts. The default is 5 seconds.
connectionRetryIntervalMultiplier var connectionRetryIntervalMultiplier: Double?
The retry interval multiplier for exponential backoff. The default is 1.5
customSerializers var customSerializers: Set<SerializationCustomSerializer<*, *>>?
deduplicationCacheExpiry var deduplicationCacheExpiry: Duration?
The cache expiry of a deduplication watermark per client. Default is 1 day.
disableGracefulReconnect var disableGracefulReconnect: Boolean?
Whether to use GracefulReconnect (4.3+)
eager var eager: Boolean?
Whether to use an eagerly initialised NodeRpcConnection implementation. Default is false. Setting to true will probably break integration tests so you will need separate application.properties for those.
maxFileSize var maxFileSize: Int?
Maximum size of RPC responses, in bytes. Default is 10mb.
maxReconnectAttempts var maxReconnectAttempts: Int?
Maximum reconnect attempts on failover or disconnection. The default is -1 which means unlimited.
minimumServerProtocolVersion var minimumServerProtocolVersion: Int?
The minimum protocol version required from the server. This is equivalent to the node’s platform version number. If this minimum version is not met, an exception will be thrown at startup. If you use features introduced in a later version, you can bump this to match the platform version you need and get an early check that runs before you do anything.
observationExecutorPoolSize var observationExecutorPoolSize: Int?
The number of threads to use for observations for executing Observable.onNext. This only has any effect if observableExecutor is null (which is the default). The default is 4.
partyName var partyName: String?
The x500 name to use for the node when testing
password var password: String?
RPC user password
reapInterval var reapInterval: Duration?
The interval of unused observable reaping. Leaked Observables (unused ones) are detected using weak references and are cleaned up in batches in this interval. If set too large it will waste server side resources for this duration. If set too low it wastes client side cycles. The default is to check once per second.
skipInfo var skipInfo: Boolean?
Whether to skip this node from actuator
trackRpcCallSites var trackRpcCallSites: Boolean?
If set to true the client will track RPC call sites (default is false). If an error occurs subsequently during the RPC or in a returned Observable stream the stack trace of the originating RPC will be shown as well. Note that constructing call stacks is a moderately expensive operation.
trustStorePassword var trustStorePassword: String?
Corresponds to ClientRpcSslOptions.trustStorePassword
trustStorePath var trustStorePath: String?
Corresponds to ClientRpcSslOptions.trustStorePath
trustStoreProvider var trustStoreProvider: String
Corresponds to ClientRpcSslOptions.trustStoreProvider
username var username: String?
RPC user

Companion Object Properties

Name Summary
DEFAULT val DEFAULT:NodeParams
NODENAME_CORDFORM val NODENAME_CORDFORM: String
NODENAME_DEFAULT val NODENAME_DEFAULT: String

Companion Object Functions

Name Summary
mergeParams fun mergeParams(partialParams:NodeParams, defaults:NodeParams? = null, skipValidation: Boolean = false):NodeParams
Merge in order of precedence, with DEFAULT being the implicit additional default options