Class DeliveryIdTracker

java.lang.Object
java.lang.Number
org.apache.qpid.protonj2.engine.util.DeliveryIdTracker
All Implemented Interfaces:
Serializable, Comparable<DeliveryIdTracker>

public class DeliveryIdTracker extends Number implements Comparable<DeliveryIdTracker>
Tracker of Delivery ID values, implements a sequence number and provides ability to keep an not set state for use when allowing for set / not set tracking.
See Also:
  • Constructor Details

    • DeliveryIdTracker

      public DeliveryIdTracker()
      Create a new Delivery Id tracker with initial state.
    • DeliveryIdTracker

      public DeliveryIdTracker(int startValue)
      Create a new Delivery Id tracker with initial state.
      Parameters:
      startValue - The initial value to assign this tracker.
  • Method Details

    • set

      public void set(int value)
      Sets the current delivery ID value for this DeliveryIdTracker
      Parameters:
      value - The new value to assign as the delivery ID.
    • reset

      public void reset()
      Clears the tracked value and marks this tracker as empty.
    • isEmpty

      public boolean isEmpty()
      Returns:
      true if the tracker is not currently tracking a delivery Id.
    • compareTo

      public int compareTo(Number other)
      Compares the tracked delivery id value to the Number given, if no value is being tracked this method returns -1. This method returns 0 if the tracked id is equal to the value provided, value less than 0 if the tracked id is less than the provided value; and a value greater than 0 if the tracked id is larger than the value provided.
      Parameters:
      other - The Number to compare the tracked id with.
      Returns:
      the result of comparing the tracked id to the provided number.
    • compareTo

      public int compareTo(int other)
      Compares the tracked delivery id value to the int given, if no value is being tracked this method returns -1. This method returns 0 if the tracked id is equal to the value provided, value less than 0 if the tracked id is less than the provided value; and a value greater than 0 if the tracked id is larger than the value provided.
      Parameters:
      other - The primitive Integer to compare the tracked id with.
      Returns:
      the result of comparing the tracked id to the provided primitive integer value.
    • compareTo

      public int compareTo(DeliveryIdTracker other)
      Specified by:
      compareTo in interface Comparable<DeliveryIdTracker>
    • intValue

      public int intValue()
      Specified by:
      intValue in class Number
    • longValue

      public long longValue()
      Specified by:
      longValue in class Number
    • floatValue

      public float floatValue()
      Specified by:
      floatValue in class Number
    • doubleValue

      public double doubleValue()
      Specified by:
      doubleValue in class Number
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • equals

      public boolean equals(int other)
      Performs an unsigned comparison between the value being tracked and the integer value passed, if no id is currently being tracked then this method returns false.
      Parameters:
      other - The value to compare to the currently tracked id.
      Returns:
      true if the tracked delivery id matches the integer value provided.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toUnsignedInteger

      public UnsignedInteger toUnsignedInteger()
      Returns:
      an UnsignedInteger view of the tracked delivery id, or null if not tracking at this time.
    • toString

      public String toString()
      Overrides:
      toString in class Object