Interface MessagingExecutionConfig

All Superinterfaces:
Prototype.Api

public sealed interface MessagingExecutionConfig extends Prototype.Api
Optional messaging execution overrides. Unconfigured values inherit the messaging defaults.
See Also:
  • Method Details

    • builder

      Create a new fluent API builder to customize configuration.
      Returns:
      a new builder
    • builder

      Create a new fluent API builder from an existing instance.
      Parameters:
      instance - an existing instance used as a base for the builder
      Returns:
      a builder based on an instance
    • create

      static MessagingExecutionConfig create(Config config)
      Create a new instance from configuration.
      Parameters:
      config - used to configure the new instance
      Returns:
      a new instance configured from configuration
    • create

      static MessagingExecutionConfig create()
      Create a new instance with default values.
      Returns:
      a new instance
    • queueCapacity

      Optional<Integer> queueCapacity()
      Maximum number of admitted tasks that may wait for an execution slot; must be zero or greater.

      Zero disables internal buffering; callers may still wait before admission, subject to maxPendingAdmissions().

      Returns:
      queue capacity
    • maxPendingAdmissions

      Optional<Integer> maxPendingAdmissions()
      Positive maximum number of callers waiting for blocking admission and open connector reservations.

      Waiting callers retain their own delivery until capacity becomes available. A connector reservation retains one permit from reservation until it is started or closed, including while the connector acquires transport data. Immediately admitted callers do not consume this budget.

      Returns:
      maximum pending admissions
    • maxPendingMessages

      Optional<Integer> maxPendingMessages()
      Positive maximum total messages retained by waiting callers and open connector reservations.

      An open connector reservation retains its declared maximum while the connector may acquire transport data. Immediately admissible caller deliveries do not consume this budget. A delivery that cannot fit is rejected instead of parking while retaining unaccounted messages.

      Returns:
      maximum pending messages
    • maxInFlightMessages

      Optional<Integer> maxInFlightMessages()
      Positive maximum number of admitted messages.

      This includes queued and executing work and completed connector deliveries whose admission lease remains held until transport settlement or abandonment.

      Returns:
      maximum in-flight message count
    • admissionTimeout

      Optional<Duration> admissionTimeout()
      Optional positive maximum time to wait for capacity, representable in nanoseconds.

      For a two-phase connector delivery, capacity-wait time while reserving and starting shares this single budget; transport acquisition time between those phases is excluded.

      Returns:
      admission timeout