case class LedgerApiServerConfig(address: String = "127.0.0.1", internalPort: Option[Port] = None, maxEventCacheWeight: Long = 0L, maxContractCacheWeight: Long = 0L, tls: Option[TlsServerConfig] = None, configurationLoadTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultConfigurationLoadTimeout, bufferedEventsProcessingParallelism: Int = LedgerApiServerConfig.DefaultEventsProcessingParallelism, bufferedStreamsPageSize: Int = LedgerIndexServiceConfig.DefaultBufferedStreamsPageSize, activeContractsService: ActiveContractsServiceConfig = ActiveContractsServiceConfig(), transactionTreeStreams: TreeTransactionStreamsConfig = TreeTransactionStreamsConfig(), transactionFlatStreams: FlatTransactionStreamsConfig = FlatTransactionStreamsConfig(), globalMaxEventIdQueries: Int = LedgerIndexServiceConfig().globalMaxEventIdQueries, globalMaxEventPayloadQueries: Int = LedgerIndexServiceConfig().globalMaxEventPayloadQueries, commandService: CommandServiceConfig = CommandServiceConfig(), userManagementService: UserManagementServiceConfig = UserManagementServiceConfig(), managementServiceTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultManagementServiceTimeout, postgresDataSource: PostgresDataSourceConfigCanton = PostgresDataSourceConfigCanton(), authServices: Seq[AuthServiceConfig] = Seq.empty, keepAliveServer: Option[KeepAliveServerConfig] = Some(KeepAliveServerConfig()), maxContractStateCacheSize: Long = LedgerApiServerConfig.DefaultMaxContractStateCacheSize, maxContractKeyStateCacheSize: Long = LedgerApiServerConfig.DefaultMaxContractKeyStateCacheSize, maxInboundMessageSize: NonNegativeInt = ServerConfig.defaultMaxInboundMessageSize, databaseConnectionTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultDatabaseConnectionTimeout, apiStreamShutdownTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultApiStreamShutdownTimeout, maxTransactionsInMemoryFanOutBufferSize: Int = LedgerApiServerConfig.DefaultMaxTransactionsInMemoryFanOutBufferSize, enableInMemoryFanOutForLedgerApi: Boolean = false, additionalMigrationPaths: Seq[String] = Seq.empty, inMemoryStateUpdaterParallelism: Int = LedgerApiServerConfig.DefaultInMemoryStateUpdaterParallelism, inMemoryFanOutThreadPoolSize: Option[Int] = None, rateLimit: Option[RateLimitingConfig] = Some(DefaultRateLimit), preparePackageMetadataTimeOutWarning: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultPreparePackageMetadataTimeOutWarning, completionsPageSize: Int = LedgerApiServerConfig.DefaultCompletionsPageSize, explicitDisclosureUnsafe: Boolean = false) extends CommunityServerConfig with Product with Serializable

Canton configuration case class to pass-through configuration options to the ledger api server

address

ledger api server host name.

internalPort

ledger api server port.

maxEventCacheWeight

ledger api server event cache maximum weight (caffeine cache size)

maxContractCacheWeight

ledger api server contract cache maximum weight (caffeine cache size)

tls

tls configuration setting from ledger api server.

configurationLoadTimeout

ledger api server startup delay if no timemodel has been sent by canton via ReadService

bufferedEventsProcessingParallelism

parallelism for loading and decoding ledger events for populating Ledger API internal buffers

activeContractsService

configurations pertaining to the ledger api server's "active contracts service"

transactionTreeStreams

configurations pertaining to the ledger api server's streams of flat transactions

transactionFlatStreams

configurations pertaining to the ledger api server's streams of transaction trees

commandService

configurations pertaining to the ledger api server's "command service"

managementServiceTimeout

ledger api server management service maximum duration. Duration has to be finite as the ledger api server uses java.time.duration that does not support infinite scala durations.

postgresDataSource

config for ledger api server when using postgres

authServices

type of authentication services used by ledger-api server. If empty, we use a wildcard. Otherwise, the first service response that does not say "unauthenticated" will be used.

keepAliveServer

keep-alive configuration for ledger api requests

maxContractStateCacheSize

maximum caffeine cache size of mutable state cache of contracts

maxContractKeyStateCacheSize

maximum caffeine cache size of mutable state cache of contract keys

maxInboundMessageSize

maximum inbound message size on the ledger api

databaseConnectionTimeout

database connection timeout

maxTransactionsInMemoryFanOutBufferSize

maximum number of transactions to hold in the "in-memory fanout" (if enabled)

enableInMemoryFanOutForLedgerApi

enable the "in-memory fan-out" performance optimization (default false; not tested for production yet)

additionalMigrationPaths

Optional extra paths for the database migrations

inMemoryStateUpdaterParallelism

The processing parallelism of the Ledger API server in-memory state updater

inMemoryFanOutThreadPoolSize

Size of the thread-pool backing the Ledger API in-memory fan-out. If not set, defaults to ((number of thread)/4 + 1)

rateLimit

limit the ledger api server request rates based on system metrics

preparePackageMetadataTimeOutWarning

Timeout for package metadata preparation after which a warning will be logged

completionsPageSize

database / akka page size for batching of ledger api server index ledger completion queries

explicitDisclosureUnsafe

enable usage of explicitly disclosed contracts in command submission and transaction validation. This feature is deemed unstable and unsafe. Should NOT be enabled in production!

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LedgerApiServerConfig
  2. CommunityServerConfig
  3. ServerConfig
  4. Serializable
  5. Product
  6. Equals
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new LedgerApiServerConfig(address: String = "127.0.0.1", internalPort: Option[Port] = None, maxEventCacheWeight: Long = 0L, maxContractCacheWeight: Long = 0L, tls: Option[TlsServerConfig] = None, configurationLoadTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultConfigurationLoadTimeout, bufferedEventsProcessingParallelism: Int = LedgerApiServerConfig.DefaultEventsProcessingParallelism, bufferedStreamsPageSize: Int = LedgerIndexServiceConfig.DefaultBufferedStreamsPageSize, activeContractsService: ActiveContractsServiceConfig = ActiveContractsServiceConfig(), transactionTreeStreams: TreeTransactionStreamsConfig = TreeTransactionStreamsConfig(), transactionFlatStreams: FlatTransactionStreamsConfig = FlatTransactionStreamsConfig(), globalMaxEventIdQueries: Int = LedgerIndexServiceConfig().globalMaxEventIdQueries, globalMaxEventPayloadQueries: Int = LedgerIndexServiceConfig().globalMaxEventPayloadQueries, commandService: CommandServiceConfig = CommandServiceConfig(), userManagementService: UserManagementServiceConfig = UserManagementServiceConfig(), managementServiceTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultManagementServiceTimeout, postgresDataSource: PostgresDataSourceConfigCanton = PostgresDataSourceConfigCanton(), authServices: Seq[AuthServiceConfig] = Seq.empty, keepAliveServer: Option[KeepAliveServerConfig] = Some(KeepAliveServerConfig()), maxContractStateCacheSize: Long = LedgerApiServerConfig.DefaultMaxContractStateCacheSize, maxContractKeyStateCacheSize: Long = LedgerApiServerConfig.DefaultMaxContractKeyStateCacheSize, maxInboundMessageSize: NonNegativeInt = ServerConfig.defaultMaxInboundMessageSize, databaseConnectionTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultDatabaseConnectionTimeout, apiStreamShutdownTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultApiStreamShutdownTimeout, maxTransactionsInMemoryFanOutBufferSize: Int = LedgerApiServerConfig.DefaultMaxTransactionsInMemoryFanOutBufferSize, enableInMemoryFanOutForLedgerApi: Boolean = false, additionalMigrationPaths: Seq[String] = Seq.empty, inMemoryStateUpdaterParallelism: Int = LedgerApiServerConfig.DefaultInMemoryStateUpdaterParallelism, inMemoryFanOutThreadPoolSize: Option[Int] = None, rateLimit: Option[RateLimitingConfig] = Some(DefaultRateLimit), preparePackageMetadataTimeOutWarning: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultPreparePackageMetadataTimeOutWarning, completionsPageSize: Int = LedgerApiServerConfig.DefaultCompletionsPageSize, explicitDisclosureUnsafe: Boolean = false)

    address

    ledger api server host name.

    internalPort

    ledger api server port.

    maxEventCacheWeight

    ledger api server event cache maximum weight (caffeine cache size)

    maxContractCacheWeight

    ledger api server contract cache maximum weight (caffeine cache size)

    tls

    tls configuration setting from ledger api server.

    configurationLoadTimeout

    ledger api server startup delay if no timemodel has been sent by canton via ReadService

    bufferedEventsProcessingParallelism

    parallelism for loading and decoding ledger events for populating Ledger API internal buffers

    activeContractsService

    configurations pertaining to the ledger api server's "active contracts service"

    transactionTreeStreams

    configurations pertaining to the ledger api server's streams of flat transactions

    transactionFlatStreams

    configurations pertaining to the ledger api server's streams of transaction trees

    commandService

    configurations pertaining to the ledger api server's "command service"

    managementServiceTimeout

    ledger api server management service maximum duration. Duration has to be finite as the ledger api server uses java.time.duration that does not support infinite scala durations.

    postgresDataSource

    config for ledger api server when using postgres

    authServices

    type of authentication services used by ledger-api server. If empty, we use a wildcard. Otherwise, the first service response that does not say "unauthenticated" will be used.

    keepAliveServer

    keep-alive configuration for ledger api requests

    maxContractStateCacheSize

    maximum caffeine cache size of mutable state cache of contracts

    maxContractKeyStateCacheSize

    maximum caffeine cache size of mutable state cache of contract keys

    maxInboundMessageSize

    maximum inbound message size on the ledger api

    databaseConnectionTimeout

    database connection timeout

    maxTransactionsInMemoryFanOutBufferSize

    maximum number of transactions to hold in the "in-memory fanout" (if enabled)

    enableInMemoryFanOutForLedgerApi

    enable the "in-memory fan-out" performance optimization (default false; not tested for production yet)

    additionalMigrationPaths

    Optional extra paths for the database migrations

    inMemoryStateUpdaterParallelism

    The processing parallelism of the Ledger API server in-memory state updater

    inMemoryFanOutThreadPoolSize

    Size of the thread-pool backing the Ledger API in-memory fan-out. If not set, defaults to ((number of thread)/4 + 1)

    rateLimit

    limit the ledger api server request rates based on system metrics

    preparePackageMetadataTimeOutWarning

    Timeout for package metadata preparation after which a warning will be logged

    completionsPageSize

    database / akka page size for batching of ledger api server index ledger completion queries

    explicitDisclosureUnsafe

    enable usage of explicitly disclosed contracts in command submission and transaction validation. This feature is deemed unstable and unsafe. Should NOT be enabled in production!

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val activeContractsService: ActiveContractsServiceConfig
  5. val additionalMigrationPaths: Seq[String]
  6. val address: String

    The address of the interface to be listening on

    The address of the interface to be listening on

    Definition Classes
    LedgerApiServerConfigServerConfig
  7. val apiStreamShutdownTimeout: NonNegativeFiniteDuration
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. val authServices: Seq[AuthServiceConfig]
  10. val bufferedEventsProcessingParallelism: Int
  11. val bufferedStreamsPageSize: Int
  12. lazy val clientConfig: ClientConfig
  13. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  14. val commandService: CommandServiceConfig
  15. val completionsPageSize: Int
  16. val configurationLoadTimeout: NonNegativeFiniteDuration
  17. val databaseConnectionTimeout: NonNegativeFiniteDuration
  18. val enableInMemoryFanOutForLedgerApi: Boolean
  19. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. val explicitDisclosureUnsafe: Boolean
  21. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  22. val globalMaxEventIdQueries: Int
  23. val globalMaxEventPayloadQueries: Int
  24. val inMemoryFanOutThreadPoolSize: Option[Int]
  25. val inMemoryStateUpdaterParallelism: Int
  26. def instantiateServerInterceptors(tracingConfig: TracingConfig, apiLoggingConfig: ApiLoggingConfig, metricsPrefix: MetricName, metrics: MetricsFactory, loggerFactory: NamedLoggerFactory, grpcMetrics: GrpcServerMetrics): CantonServerInterceptors

    Use the configuration to instantiate the interceptors for this server

    Use the configuration to instantiate the interceptors for this server

    Definition Classes
    CommunityServerConfigServerConfig
  27. val internalPort: Option[Port]

    Port to be listening on (must be greater than 0).

    Port to be listening on (must be greater than 0). If the port is None, a default port will be assigned on startup.

    NOTE: If you rename this field, adapt the corresponding product hint for config reading. In the configuration the field is still called port for usability reasons.

    Definition Classes
    LedgerApiServerConfigServerConfig
  28. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  29. val keepAliveServer: Option[KeepAliveServerConfig]

    server keep alive settings

    server keep alive settings

    Definition Classes
    LedgerApiServerConfigServerConfig
  30. val managementServiceTimeout: NonNegativeFiniteDuration
  31. val maxContractCacheWeight: Long
  32. val maxContractKeyStateCacheSize: Long
  33. val maxContractStateCacheSize: Long
  34. val maxEventCacheWeight: Long
  35. val maxInboundMessageSize: NonNegativeInt

    maximum inbound message size in bytes on the ledger api and the admin api

    maximum inbound message size in bytes on the ledger api and the admin api

    Definition Classes
    LedgerApiServerConfigServerConfig
  36. val maxTransactionsInMemoryFanOutBufferSize: Int
  37. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  38. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  39. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  40. def port: Port

    Returns the configured or the default port that must be assigned after config loading and before config usage.

    Returns the configured or the default port that must be assigned after config loading and before config usage.

    We split between port and internalPort to offer a clean API to users of the config in the form of port, which must always return a configured or default port, and the internal representation that may be None before being assigned a default port.

    Definition Classes
    ServerConfig
  41. val postgresDataSource: PostgresDataSourceConfigCanton
  42. val preparePackageMetadataTimeOutWarning: NonNegativeFiniteDuration
  43. def productElementNames: Iterator[String]
    Definition Classes
    Product
  44. val rateLimit: Option[RateLimitingConfig]
  45. def serverCertChainFile: Option[ExistingFile]

    server cert chain file if TLS is defined

    server cert chain file if TLS is defined

    Used for domain internal GRPC sequencer connections

    Definition Classes
    LedgerApiServerConfigServerConfig
  46. def sslContext: Option[SslContext]

    If defined, dictates to use TLS when connecting to this node through the given address and port.

    If defined, dictates to use TLS when connecting to this node through the given address and port. Server authentication is always enabled. Subclasses may decide whether to support client authentication.

    Definition Classes
    LedgerApiServerConfigServerConfig
  47. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  48. val tls: Option[TlsServerConfig]
  49. def toSequencerConnectionConfig: Grpc
    Definition Classes
    ServerConfig
  50. val transactionFlatStreams: FlatTransactionStreamsConfig
  51. val transactionTreeStreams: TreeTransactionStreamsConfig
  52. val userManagementService: UserManagementServiceConfig
  53. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  54. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  55. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from CommunityServerConfig

Inherited from ServerConfig

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped