Class LocalSchedulingClient

java.lang.Object
io.fluxzero.sdk.tracking.client.LocalTrackingClient
io.fluxzero.sdk.scheduling.client.LocalSchedulingClient
All Implemented Interfaces:
Monitored<List<SerializedMessage>>, HasMessageStore, GatewayClient, SchedulingClient, TrackingClient, AutoCloseable

public class LocalSchedulingClient extends LocalTrackingClient implements SchedulingClient
A client implementation for managing scheduling operations using an in-memory schedule store. This class extends LocalTrackingClient and implements the SchedulingClient interface. It serves as a local, non-distributed scheduling client primarily useful for testing scenarios or where an in-memory schedule store suffices.
  • Constructor Details

    • LocalSchedulingClient

      public LocalSchedulingClient(Duration messageExpiration)
    • LocalSchedulingClient

      public LocalSchedulingClient(Duration messageExpiration, Duration initialPositionLag)
      Creates a local scheduling client with a configurable look-back for consumers without a stored position.
      Parameters:
      messageExpiration - retention duration for local schedules
      initialPositionLag - duration subtracted from the current time for a new consumer
    • LocalSchedulingClient

      public LocalSchedulingClient(Duration messageExpiration, Clock clock)
    • LocalSchedulingClient

      public LocalSchedulingClient(Duration messageExpiration, Clock clock, Duration initialPositionLag)
      Creates a clock-controlled local scheduling client with a configurable initial look-back.
      Parameters:
      messageExpiration - retention duration for local schedules
      clock - clock used by the schedule store
      initialPositionLag - duration subtracted from the current time for a new consumer
  • Method Details