Class LoomConfig

java.lang.Object
com.loomcache.server.config.LoomConfig

public final class LoomConfig extends Object
Immutable centralized configuration for a LoomCache node.

Holds all LoomCache settings with sensible defaults and validation. Constructed via the builder pattern for clean initialization.

  • Method Details

    • nodeId

      public String nodeId()
    • advertisedHost

      public String advertisedHost()
    • bindAddress

      public String bindAddress()
    • port

      public int port()
    • idGeneratorNodeId

      public int idGeneratorNodeId()
    • clusterId

      public String clusterId()
    • clusterMembers

      public List<String> clusterMembers()
    • raftBootstrapServers

      public List<ClusterConfig.RaftBootstrapServer> raftBootstrapServers()
    • discoveryConfig

      public DiscoveryConfig discoveryConfig()
    • raftElectionTimeoutMs

      public long raftElectionTimeoutMs()
    • raftHeartbeatIntervalMs

      public long raftHeartbeatIntervalMs()
    • healthCheckIntervalMs

      public long healthCheckIntervalMs()
    • icmpFailureDetectorConfig

      public IcmpFailureDetectorConfig icmpFailureDetectorConfig()
    • slowOperationDetectorConfig

      public SlowOperationDetectorConfig slowOperationDetectorConfig()
    • metricsPort

      public int metricsPort()
    • walDirectory

      public Path walDirectory()
    • backupDirectory

      public @Nullable Path backupDirectory()
    • hotBackupIntervalSeconds

      public long hotBackupIntervalSeconds()
    • snapshotThreshold

      public int snapshotThreshold()
    • clusterDataRecoveryPolicy

      public ClusterDataRecoveryPolicy clusterDataRecoveryPolicy()
    • persistenceValidationTimeoutSeconds

      public long persistenceValidationTimeoutSeconds()
    • persistenceDataLoadTimeoutSeconds

      public long persistenceDataLoadTimeoutSeconds()
    • persistenceRecoveryParallelism

      public int persistenceRecoveryParallelism()
    • maxParallelMigrations

      public int maxParallelMigrations()
    • maxExecutorTaskPayloadBytes

      public int maxExecutorTaskPayloadBytes()
    • readBackupData

      public boolean readBackupData()
    • maxMapEntries

      public int maxMapEntries()
    • evictionPolicy

      public String evictionPolicy()
    • maxMemoryBytes

      public long maxMemoryBytes()
    • enablePersistence

      public boolean enablePersistence()
    • auditEnabled

      public boolean auditEnabled()
    • auditQueueCapacity

      public int auditQueueCapacity()
    • tlsConfig

      public TlsConfig tlsConfig()
    • endpointTlsConfig

      public EndpointTlsConfig endpointTlsConfig()
    • authConfig

      public AuthConfig authConfig()
    • maxConnections

      public int maxConnections()
    • tcpReadTimeoutMs

      public long tcpReadTimeoutMs()
    • tcpIdleTimeoutMs

      public long tcpIdleTimeoutMs()
    • gracefulShutdownDrainMs

      public long gracefulShutdownDrainMs()
    • maxEntriesPerAppend

      public int maxEntriesPerAppend()
    • replicationTimeoutMs

      public long replicationTimeoutMs()
    • logCompactionThreshold

      public int logCompactionThreshold()
    • pipelinedExecution

      public boolean pipelinedExecution()
    • commandQueueCapacity

      public int commandQueueCapacity()
    • commandExecutorThreads

      public int commandExecutorThreads()
    • raftGroupCount

      public int raftGroupCount()
    • partitionGroupType

      public PartitionGroupType partitionGroupType()
    • partitionGroupConfig

      public PartitionGroupConfig partitionGroupConfig()
    • mapIndexes

      public Map<String, List<IndexConfig>> mapIndexes()
    • queueConfigs

      public Map<String, QueueConfig> queueConfigs()
    • priorityQueueConfigs

      public Map<String, PriorityQueueConfig> priorityQueueConfigs()
    • dataConnectionConfigs

      public Map<String, DataConnectionConfig> dataConnectionConfigs()
    • genericMapStoreConfigs

      public Map<String, GenericMapStoreConfig> genericMapStoreConfigs()
    • idempotencyTtlMs

      public long idempotencyTtlMs()
      TTL for idempotency dedup cache entries in milliseconds. Defaults to 60,000 ms (1 minute).
      Returns:
      the idempotency TTL in milliseconds
    • wanAcknowledgeType

      public WanAcknowledgeType wanAcknowledgeType()
    • wanPersistReplicatedData

      public boolean wanPersistReplicatedData()
    • toClusterConfig

      public ClusterConfig toClusterConfig()
    • validate

      public void validate()
      Validate the configuration.
      Throws:
      IllegalArgumentException - if any configuration is invalid
      NullPointerException - if critical fields are null
    • builder

      public static LoomConfig.Builder builder()