corda / net.corda.core.node / NetworkParameters

NetworkParameters

data class NetworkParameters

Network parameters are a set of values that every node participating in the zone needs to agree on and use to correctly interoperate with each other.

Constructors

<init>

NetworkParameters(minimumPlatformVersion: Int, notaries: List<NotaryInfo>, maxMessageSize: Int, maxTransactionSize: Int, modifiedTime: Instant, epoch: Int, whitelistedContractImplementations: Map<String, List<AttachmentId>>)
NetworkParameters(minimumPlatformVersion: Int, notaries: List<NotaryInfo>, maxMessageSize: Int, maxTransactionSize: Int, modifiedTime: Instant, epoch: Int, whitelistedContractImplementations: Map<String, List<AttachmentId>>, eventHorizon: Duration)
NetworkParameters(minimumPlatformVersion: Int, notaries: List<NotaryInfo>, maxMessageSize: Int, maxTransactionSize: Int, modifiedTime: Instant, epoch: Int, whitelistedContractImplementations: Map<String, List<AttachmentId>>, eventHorizon: Duration, packageOwnership: Map<String, PublicKey>)

Network parameters are a set of values that every node participating in the zone needs to agree on and use to correctly interoperate with each other.

NetworkParameters(minimumPlatformVersion: Int, notaries: List<NotaryInfo>, maxMessageSize: Int, maxTransactionSize: Int, modifiedTime: Instant, epoch: Int, whitelistedContractImplementations: Map<String, List<AttachmentId>>, eventHorizon: Duration, packageOwnership: Map<String, PublicKey>, recoveryMaximumBackupInterval: Duration? = null, confidentialIdentityMinimumBackupInterval: Duration? = null)

Properties

confidentialIdentityMinimumBackupInterval

A default value for the minimum age of a generated confidential identity key before it can be used. This can be overridden in the node configuration or if a more recent database backup is indicated via RPC / shell. It is optional in both the network parameters and the node configuration and if no value is set for either then it is assumed to be zero.

val confidentialIdentityMinimumBackupInterval: Duration?

epoch

(AutoAcceptable) Version number of the network parameters. Starting from 1, this will always increment on each new set of parameters.

val epoch: Int

eventHorizon

Time after which nodes will be removed from the network map if they have not been seen during this period.

val eventHorizon: Duration

maxMessageSize

Maximum allowed size in bytes of an individual message sent over the wire.

val maxMessageSize: Int

maxTransactionSize

Maximum permitted transaction size in bytes.

val maxTransactionSize: Int

minimumPlatformVersion

Minimum version of Corda platform that is required for nodes in the network.

val minimumPlatformVersion: Int

modifiedTime

(AutoAcceptable) Last modification time of network parameters set.

val modifiedTime: Instant

notaries

List of well known and trusted notary identities with information on validation type.

val notaries: List<NotaryInfo>

packageOwnership

(AutoAcceptable) List of the network-wide java packages that were successfully claimed by their owners. Any CorDapp JAR that offers contracts and states in any of these packages must be signed by the owner.

val packageOwnership: Map<String, PublicKey>

recoveryMaximumBackupInterval

A default value, that will be used by the Ledger Recovery flows to set how far back in time to consider for recovery. The expectation is that a node will restore to a database backup that is no older than this, by default, when attempting a recovery. This value can be overridden by specifying an override to the flow. It can also be overridden if the same parameter is specified, per-node in the node configuration. An override to the flow takes priority in terms of overrides. It is optional in both the network parameters and the node configuration however if no values are set then it needs to be specified in the flow.

val recoveryMaximumBackupInterval: Duration?

whitelistedContractImplementations

(AutoAcceptable) List of whitelisted jars containing contract code for each contract class. This will be used by net.corda.core.contracts.WhitelistedByZoneAttachmentConstraint. You can learn more about contract constraints here.

val whitelistedContractImplementations: Map<String, List<AttachmentId>>

Functions

copy

This is to address backwards compatibility of the API, invariant to package ownership addresses bug CORDA-2769

fun copy(minimumPlatformVersion: Int = this.minimumPlatformVersion, notaries: List<NotaryInfo> = this.notaries, maxMessageSize: Int = this.maxMessageSize, maxTransactionSize: Int = this.maxTransactionSize, modifiedTime: Instant = this.modifiedTime, epoch: Int = this.epoch, whitelistedContractImplementations: Map<String, List<AttachmentId>> = this.whitelistedContractImplementations, eventHorizon: Duration = this.eventHorizon, packageOwnership: Map<String, PublicKey> = this.packageOwnership): NetworkParameters
fun copy(minimumPlatformVersion: Int = this.minimumPlatformVersion, notaries: List<NotaryInfo> = this.notaries, maxMessageSize: Int = this.maxMessageSize, maxTransactionSize: Int = this.maxTransactionSize, modifiedTime: Instant = this.modifiedTime, epoch: Int = this.epoch, whitelistedContractImplementations: Map<String, List<AttachmentId>> = this.whitelistedContractImplementations, eventHorizon: Duration = this.eventHorizon): NetworkParameters
fun copy(minimumPlatformVersion: Int = this.minimumPlatformVersion, notaries: List<NotaryInfo> = this.notaries, maxMessageSize: Int = this.maxMessageSize, maxTransactionSize: Int = this.maxTransactionSize, modifiedTime: Instant = this.modifiedTime, epoch: Int = this.epoch, whitelistedContractImplementations: Map<String, List<AttachmentId>> = this.whitelistedContractImplementations): NetworkParameters

toImmutable

fun toImmutable(): NetworkParameters

toString

fun toString(): String