Class Read

java.lang.Object
io.fluxzero.common.api.Request
io.fluxzero.common.api.tracking.Read
All Implemented Interfaces:
JsonType
Direct Known Subclasses:
ClaimSegment

public class Read extends Request
Command to read a batch of messages from the Fluxzero Runtime for a given consumer and tracker.

This is a low-level API, typically only used internally in Fluxzero by client-side tracking mechanisms or in advanced Fluxzero projects to support external consumers.

  • Constructor Summary

    Constructors
    Constructor
    Description
    Read(MessageType messageType, String consumer, String trackerId, int maxSize, long maxBytes, long maxTimeout, String typeFilter, boolean filterMessageTarget, boolean ignoreSegment, boolean singleTracker, boolean clientControlledIndex, boolean includeDocumentTombstones, Long lastIndex, Long purgeTimeout)
     
    Read(MessageType messageType, String consumer, String trackerId, int maxSize, long maxBytes, long maxTimeout, String typeFilter, boolean filterMessageTarget, boolean ignoreSegment, boolean singleTracker, boolean clientControlledIndex, Long lastIndex, Long purgeTimeout)
     
    Read(MessageType messageType, String consumer, String trackerId, int maxSize, long maxTimeout, String typeFilter, boolean filterMessageTarget, boolean ignoreSegment, boolean singleTracker, boolean clientControlledIndex, Long lastIndex, Long purgeTimeout)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    Adapts this request to a peer without consumer-filter support, retaining its identity and explicit cursor.
    boolean
     
    Keeps the historical Read metric shape without copying complete filter snapshots into telemetry.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Read

      @ConstructorProperties({"messageType","consumer","trackerId","maxSize","maxBytes","maxTimeout","typeFilter","filterMessageTarget","ignoreSegment","singleTracker","clientControlledIndex","includeDocumentTombstones","lastIndex","purgeTimeout"}) public Read(MessageType messageType, String consumer, String trackerId, int maxSize, long maxBytes, long maxTimeout, String typeFilter, boolean filterMessageTarget, boolean ignoreSegment, boolean singleTracker, boolean clientControlledIndex, boolean includeDocumentTombstones, Long lastIndex, Long purgeTimeout)
    • Read

      public Read(MessageType messageType, String consumer, String trackerId, int maxSize, long maxBytes, long maxTimeout, String typeFilter, boolean filterMessageTarget, boolean ignoreSegment, boolean singleTracker, boolean clientControlledIndex, Long lastIndex, Long purgeTimeout)
    • Read

      public Read(MessageType messageType, String consumer, String trackerId, int maxSize, long maxTimeout, String typeFilter, boolean filterMessageTarget, boolean ignoreSegment, boolean singleTracker, boolean clientControlledIndex, Long lastIndex, Long purgeTimeout)
  • Method Details

    • isIgnoreMessageTarget

      public boolean isIgnoreMessageTarget()
      Returns:
      true if messages should not be filtered by target client/tracker ID. This is the inverse of filterMessageTarget.
    • forLegacyPeer

      public Read forLegacyPeer()
      Adapts this request to a peer without consumer-filter support, retaining its identity and explicit cursor. An independently bounded long idle wait falls back to the historic scan window on that peer.
    • toMetric

      public Object toMetric()
      Keeps the historical Read metric shape without copying complete filter snapshots into telemetry.
      Returns:
      a safe and compact object suitable for serialization to the metrics log