Class Uuid

  • All Implemented Interfaces:
    Comparable<Uuid>

    public class Uuid
    extends Object
    implements Comparable<Uuid>
    This class defines an immutable universally unique identifier (UUID). It represents a 128-bit value. More specifically, the random UUIDs generated by this class are variant 2 (Leach-Salz) version 4 UUIDs. This is the same type of UUID as the ones generated by java.util.UUID. The toString() method prints using the base64 string encoding. Likewise, the fromString method expects a base64 string encoding.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static Uuid METADATA_TOPIC_ID
      A UUID for the metadata topic in KRaft mode.
      static Uuid ZERO_UUID
      A UUID that represents a null or empty UUID.
    • Constructor Summary

      Constructors 
      Constructor Description
      Uuid​(long mostSigBits, long leastSigBits)
      Constructs a 128-bit type 4 UUID where the first long represents the most significant 64 bits and the second long represents the least significant 64 bits.
    • Field Detail

      • METADATA_TOPIC_ID

        public static final Uuid METADATA_TOPIC_ID
        A UUID for the metadata topic in KRaft mode. Will never be returned by the randomUuid method.
      • ZERO_UUID

        public static final Uuid ZERO_UUID
        A UUID that represents a null or empty UUID. Will never be returned by the randomUuid method.
    • Constructor Detail

      • Uuid

        public Uuid​(long mostSigBits,
                    long leastSigBits)
        Constructs a 128-bit type 4 UUID where the first long represents the most significant 64 bits and the second long represents the least significant 64 bits.
    • Method Detail

      • randomUuid

        public static Uuid randomUuid()
        Static factory to retrieve a type 4 (pseudo randomly generated) UUID. This will not generate a UUID equal to 0, 1, or one whose string representation starts with a dash ("-")
      • getMostSignificantBits

        public long getMostSignificantBits()
        Returns the most significant bits of the UUID's 128 value.
      • getLeastSignificantBits

        public long getLeastSignificantBits()
        Returns the least significant bits of the UUID's 128 value.
      • equals

        public boolean equals​(Object obj)
        Returns true iff obj is another Uuid represented by the same two long values.
        Overrides:
        equals in class Object
      • hashCode

        public int hashCode()
        Returns a hash code for this UUID
        Overrides:
        hashCode in class Object
      • toString

        public String toString()
        Returns a base64 string encoding of the UUID.
        Overrides:
        toString in class Object
      • fromString

        public static Uuid fromString​(String str)
        Creates a UUID based on a base64 string encoding used in the toString() method.