final case class DomainParametersConfig(reconciliationInterval: PositiveSeconds = StaticDomainParameters.defaultReconciliationInterval, maxRatePerParticipant: NonNegativeInt = StaticDomainParameters.defaultMaxRatePerParticipant, maxInboundMessageSize: NonNegativeInt = StaticDomainParameters.defaultMaxInboundMessageSize, uniqueContractKeys: Boolean = true, requiredSigningKeySchemes: Option[NonEmptySet[SigningKeyScheme]] = None, requiredEncryptionKeySchemes: Option[NonEmptySet[EncryptionKeyScheme]] = None, requiredSymmetricKeySchemes: Option[NonEmptySet[SymmetricKeyScheme]] = None, requiredHashAlgorithms: Option[NonEmptySet[HashAlgorithm]] = None, requiredCryptoKeyFormats: Option[NonEmptySet[CryptoKeyFormat]] = None, protocolVersion: DomainProtocolVersion = DomainProtocolVersion( ProtocolVersion.latest )) extends Product with Serializable
Configuration of domain parameters that all members connecting to a domain must adhere to.
To set these parameters, you need to be familiar with the Canton architecture. See the Canton architecture overview for further information.
- reconciliationInterval
determines the time between sending two successive ACS commitments. Must be a multiple of 1 second.
- maxRatePerParticipant
maximum number of messages sent per participant per second
- maxInboundMessageSize
maximum size of messages (in bytes) that the domain can receive through the public API
- uniqueContractKeys
When set, participants connected to this domain will check that contract keys are unique. When a participant is connected to a domain with unique contract keys support, it must not connect nor have ever been connected to any other domain.
- requiredSigningKeySchemes
The optional required signing key schemes that a member has to support. If none is specified, all the allowed schemes are required.
- requiredEncryptionKeySchemes
The optional required encryption key schemes that a member has to support. If none is specified, all the allowed schemes are required.
- requiredSymmetricKeySchemes
The optional required symmetric key schemes that a member has to support. If none is specified, all the allowed schemes are required.
- requiredHashAlgorithms
The optional required hash algorithms that a member has to support. If none is specified, all the allowed algorithms are required.
- requiredCryptoKeyFormats
The optional required crypto key formats that a member has to support. If none is specified, all the supported algorithms are required.
- protocolVersion
The protocol version spoken on the domain. All participants and domain nodes attempting to connect to the sequencer need to support this protocol version to connect.
- Alphabetic
- By Inheritance
- DomainParametersConfig
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new DomainParametersConfig(reconciliationInterval: PositiveSeconds = StaticDomainParameters.defaultReconciliationInterval, maxRatePerParticipant: NonNegativeInt = StaticDomainParameters.defaultMaxRatePerParticipant, maxInboundMessageSize: NonNegativeInt = StaticDomainParameters.defaultMaxInboundMessageSize, uniqueContractKeys: Boolean = true, requiredSigningKeySchemes: Option[NonEmptySet[SigningKeyScheme]] = None, requiredEncryptionKeySchemes: Option[NonEmptySet[EncryptionKeyScheme]] = None, requiredSymmetricKeySchemes: Option[NonEmptySet[SymmetricKeyScheme]] = None, requiredHashAlgorithms: Option[NonEmptySet[HashAlgorithm]] = None, requiredCryptoKeyFormats: Option[NonEmptySet[CryptoKeyFormat]] = None, protocolVersion: DomainProtocolVersion = DomainProtocolVersion(
ProtocolVersion.latest
))
- reconciliationInterval
determines the time between sending two successive ACS commitments. Must be a multiple of 1 second.
- maxRatePerParticipant
maximum number of messages sent per participant per second
- maxInboundMessageSize
maximum size of messages (in bytes) that the domain can receive through the public API
- uniqueContractKeys
When set, participants connected to this domain will check that contract keys are unique. When a participant is connected to a domain with unique contract keys support, it must not connect nor have ever been connected to any other domain.
- requiredSigningKeySchemes
The optional required signing key schemes that a member has to support. If none is specified, all the allowed schemes are required.
- requiredEncryptionKeySchemes
The optional required encryption key schemes that a member has to support. If none is specified, all the allowed schemes are required.
- requiredSymmetricKeySchemes
The optional required symmetric key schemes that a member has to support. If none is specified, all the allowed schemes are required.
- requiredHashAlgorithms
The optional required hash algorithms that a member has to support. If none is specified, all the allowed algorithms are required.
- requiredCryptoKeyFormats
The optional required crypto key formats that a member has to support. If none is specified, all the supported algorithms are required.
- protocolVersion
The protocol version spoken on the domain. All participants and domain nodes attempting to connect to the sequencer need to support this protocol version to connect.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val maxInboundMessageSize: NonNegativeInt
- val maxRatePerParticipant: NonNegativeInt
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val protocolVersion: DomainProtocolVersion
- val reconciliationInterval: PositiveSeconds
- val requiredCryptoKeyFormats: Option[NonEmptySet[CryptoKeyFormat]]
- val requiredEncryptionKeySchemes: Option[NonEmptySet[EncryptionKeyScheme]]
- val requiredHashAlgorithms: Option[NonEmptySet[HashAlgorithm]]
- val requiredSigningKeySchemes: Option[NonEmptySet[SigningKeyScheme]]
- val requiredSymmetricKeySchemes: Option[NonEmptySet[SymmetricKeyScheme]]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toStaticDomainParameters(cryptoConfig: CryptoConfig): Either[String, StaticDomainParameters]
Converts the domain parameters config into a domain parameters protocol message.
Converts the domain parameters config into a domain parameters protocol message.
Sets the required crypto schemes based on the provided crypto config if they are unset in the config.
- val uniqueContractKeys: Boolean
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])