com.digitalasset.canton.participant.config
LedgerApiServerConfig
Companion object LedgerApiServerConfig
final case class LedgerApiServerConfig(address: String = "127.0.0.1", internalPort: Option[Port] = None, indexService: IndexServiceConfig = LedgerIndexServiceConfig(), tls: Option[TlsServerConfig] = None, configurationLoadTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultConfigurationLoadTimeout, commandService: CommandServiceConfig = CommandServiceConfig(), userManagementService: UserManagementServiceConfig = UserManagementServiceConfig(), partyManagementService: PartyManagementServiceConfig = PartyManagementServiceConfig(), managementServiceTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultManagementServiceTimeout, postgresDataSource: PostgresDataSourceConfig = PostgresDataSourceConfig(), authServices: Seq[AuthServiceConfig] = Seq.empty, keepAliveServer: Option[LedgerApiKeepAliveServerConfig] = Some( LedgerApiKeepAliveServerConfig() ), maxInboundMessageSize: NonNegativeInt = ServerConfig.defaultMaxInboundMessageSize, databaseConnectionTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultDatabaseConnectionTimeout, apiStreamShutdownTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultApiStreamShutdownTimeout, additionalMigrationPaths: Seq[String] = Seq.empty, rateLimit: Option[RateLimitingConfig] = Some(DefaultRateLimit), enableExplicitDisclosure: Boolean = true, enableCommandInspection: Boolean = true, adminToken: Option[String] = None, identityProviderManagement: IdentityProviderManagementConfig = LedgerApiServerConfig.DefaultIdentityProviderManagementConfig, unsafeEnableEventsByContractKeyCache: EnableEventsByContractKeyCache = EnableEventsByContractKeyCache.Disabled, synchronizeVettingOnUpload: 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.
- tls
tls configuration setting from ledger api server.
- configurationLoadTimeout
ledger api server startup delay if no timemodel has been sent by canton via ReadService
- 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
- maxInboundMessageSize
maximum inbound message size on the ledger api
- databaseConnectionTimeout
database connection timeout
- additionalMigrationPaths
optional extra paths for the database migrations
- rateLimit
limit the ledger api server request rates based on system metrics
- enableExplicitDisclosure
enable usage of explicitly disclosed contracts in command submission and transaction validation.
- enableCommandInspection
enable command inspection service over the ledger api
- Alphabetic
- By Inheritance
- LedgerApiServerConfig
- CommunityServerConfig
- ServerConfig
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new LedgerApiServerConfig(address: String = "127.0.0.1", internalPort: Option[Port] = None, indexService: IndexServiceConfig = LedgerIndexServiceConfig(), tls: Option[TlsServerConfig] = None, configurationLoadTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultConfigurationLoadTimeout, commandService: CommandServiceConfig = CommandServiceConfig(), userManagementService: UserManagementServiceConfig = UserManagementServiceConfig(), partyManagementService: PartyManagementServiceConfig = PartyManagementServiceConfig(), managementServiceTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultManagementServiceTimeout, postgresDataSource: PostgresDataSourceConfig = PostgresDataSourceConfig(), authServices: Seq[AuthServiceConfig] = Seq.empty, keepAliveServer: Option[LedgerApiKeepAliveServerConfig] = Some(
LedgerApiKeepAliveServerConfig()
), maxInboundMessageSize: NonNegativeInt = ServerConfig.defaultMaxInboundMessageSize, databaseConnectionTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultDatabaseConnectionTimeout, apiStreamShutdownTimeout: NonNegativeFiniteDuration = LedgerApiServerConfig.DefaultApiStreamShutdownTimeout, additionalMigrationPaths: Seq[String] = Seq.empty, rateLimit: Option[RateLimitingConfig] = Some(DefaultRateLimit), enableExplicitDisclosure: Boolean = true, enableCommandInspection: Boolean = true, adminToken: Option[String] = None, identityProviderManagement: IdentityProviderManagementConfig = LedgerApiServerConfig.DefaultIdentityProviderManagementConfig, unsafeEnableEventsByContractKeyCache: EnableEventsByContractKeyCache = EnableEventsByContractKeyCache.Disabled, synchronizeVettingOnUpload: Boolean = false)
- address
ledger api server host name.
- internalPort
ledger api server port.
- tls
tls configuration setting from ledger api server.
- configurationLoadTimeout
ledger api server startup delay if no timemodel has been sent by canton via ReadService
- 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
- maxInboundMessageSize
maximum inbound message size on the ledger api
- databaseConnectionTimeout
database connection timeout
- additionalMigrationPaths
optional extra paths for the database migrations
- rateLimit
limit the ledger api server request rates based on system metrics
- enableExplicitDisclosure
enable usage of explicitly disclosed contracts in command submission and transaction validation.
- enableCommandInspection
enable command inspection service over the ledger api
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
- val additionalMigrationPaths: Seq[String]
- val address: String
The address of the interface to be listening on
The address of the interface to be listening on
- Definition Classes
- LedgerApiServerConfig → ServerConfig
- val adminToken: Option[String]
- val apiStreamShutdownTimeout: NonNegativeFiniteDuration
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val authServices: Seq[AuthServiceConfig]
- lazy val clientConfig: ClientConfig
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- val commandService: CommandServiceConfig
- val configurationLoadTimeout: NonNegativeFiniteDuration
- val databaseConnectionTimeout: NonNegativeFiniteDuration
- val enableCommandInspection: Boolean
- val enableExplicitDisclosure: Boolean
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- val identityProviderManagement: IdentityProviderManagementConfig
- val indexService: IndexServiceConfig
- 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
- CommunityServerConfig → ServerConfig
- 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
- LedgerApiServerConfig → ServerConfig
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val keepAliveServer: Option[LedgerApiKeepAliveServerConfig]
server keep alive settings
server keep alive settings
- Definition Classes
- LedgerApiServerConfig → ServerConfig
- val managementServiceTimeout: NonNegativeFiniteDuration
- 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
- LedgerApiServerConfig → ServerConfig
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- val partyManagementService: PartyManagementServiceConfig
- 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
andinternalPort
to offer a clean API to users of the config in the form ofport
, 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
- val postgresDataSource: PostgresDataSourceConfig
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val rateLimit: Option[RateLimitingConfig]
- 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
- LedgerApiServerConfig → ServerConfig
- def sslContext: Option[SslContext]
If defined, dictates to use TLS when connecting to this node through the given
address
andport
.If defined, dictates to use TLS when connecting to this node through the given
address
andport
. Server authentication is always enabled. Subclasses may decide whether to support client authentication.- Definition Classes
- LedgerApiServerConfig → ServerConfig
- val synchronizeVettingOnUpload: Boolean
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val tls: Option[TlsServerConfig]
- val unsafeEnableEventsByContractKeyCache: EnableEventsByContractKeyCache
- val userManagementService: UserManagementServiceConfig
- 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])