Class CommandsConfig

java.lang.Object
app.l2nx.gs.adapter.core.commands.CommandsConfig

public final class CommandsConfig extends Object
Operator-tunable knobs for the built-in commands consumer. Resolved by ConfigResolver.resolveCommandsConfig() via the file-first source chain (l2nx.properties → JVM system property → built-in default).

getKafkaOverrides() are per-property overrides for the KafkaConsumer this module creates (e.g. l2nx.commands.kafka.max.poll.records=50). They are layered on top of internal defaults — overrides win where keys collide, except for security and identity properties which are always taken from the platform-issued connect response.

  • Field Details

    • DEFAULT_POLL_TIMEOUT_MS

      public static final long DEFAULT_POLL_TIMEOUT_MS
      See Also:
    • DEFAULT_SHUTDOWN_TIMEOUT_MS

      public static final long DEFAULT_SHUTDOWN_TIMEOUT_MS
      See Also:
    • DEFAULT_HOST_SYNC_TIMEOUT_MS

      public static final long DEFAULT_HOST_SYNC_TIMEOUT_MS
      Bound on ctx.host().sync(...) await — high enough that a healthy host pool succeeds, low enough that a stuck pool surfaces as a typed HostExecutorTimeoutException rather than a wedged consumer thread.
      See Also:
    • DEFAULT_REPLY_FLUSH_TIMEOUT_MS

      public static final long DEFAULT_REPLY_FLUSH_TIMEOUT_MS
      Bound on the per-batch reply-flush wait between handler completion and Kafka offset commit. Replies are sent async via the Kafka producer; the dispatcher waits up to this window for all in-flight callbacks to fire before advancing the consumer offset, ensuring at-least-once delivery across the inbound + reply legs.
      See Also:
  • Constructor Details

    • CommandsConfig

      public CommandsConfig(long pollTimeoutMs, long shutdownTimeoutMs, long hostSyncTimeoutMs, long replyFlushTimeoutMs, Map<String,Object> kafkaOverrides)
  • Method Details

    • defaults

      public static CommandsConfig defaults()
    • getPollTimeoutMs

      public long getPollTimeoutMs()
    • getShutdownTimeoutMs

      public long getShutdownTimeoutMs()
    • getHostSyncTimeoutMs

      public long getHostSyncTimeoutMs()
    • getReplyFlushTimeoutMs

      public long getReplyFlushTimeoutMs()
    • getKafkaOverrides

      public Map<String,Object> getKafkaOverrides()