Class Uid

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable

    public class Uid
    extends java.lang.Object
    implements java.lang.Cloneable, java.io.Serializable
    Implements a unique identity class. Since 4.9 each instance is immutable.
    Since:
    1.0.
    Version:
    $Id: Uid.java 2342 2006-03-30 13:06:17Z $
    Author:
    Mark Little (mark@arjuna.com)
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected long[] hostAddr  
      protected int other  
      protected int process  
      protected int sec  
      static int UID_SIZE  
    • Constructor Summary

      Constructors 
      Constructor Description
      Uid()
      Create a new instance.
      Uid​(byte[] byteForm)  
      Uid​(long[] addr, int processId, int time, int incr)  
      Uid​(Uid copyFrom)
      Create a copy of the specified identifier.
      Uid​(java.lang.String uidString)
      Create Uid from string representation.
      Uid​(java.lang.String uidString, boolean errsOk)
      Create Uid from string representation.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object clone()
      Create a copy of this instance.
      boolean equals​(Uid u)  
      boolean equals​(java.lang.Object o)
      Override Object.equals
      java.lang.String fileStringForm()  
      byte[] getBytes()
      Get the byte representation of the Uid.
      java.lang.String getHexPid()  
      boolean greaterThan​(Uid u)  
      int hashCode()
      Override Object.hashCode.
      static Uid lastResourceUid()
      Return a last resource Uid (0:0:0:0:1)
      boolean lessThan​(Uid u)  
      static Uid maxUid()
      Return the maximum Uid (7fffffffffffffff:7fffffffffffffff:7fffffff:7fffffff:7fffffff)
      static Uid minUid()
      Return the minimum Uid (-8000000000000000:-8000000000000000:-80000000:-80000000:-80000000)
      boolean notEquals​(Uid u)  
      static Uid nullUid()
      Return a null Uid (0:0:0:0:0)
      void print​(java.io.PrintStream strm)
      Print a human-readable form of the Uid.
      java.lang.String stringForm()  
      java.lang.String toString()
      Same as stringForm()
      boolean valid()
      Is the Uid valid?
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • hostAddr

        protected volatile long[] hostAddr
      • process

        protected volatile int process
      • sec

        protected volatile int sec
      • other

        protected volatile int other
    • Constructor Detail

      • Uid

        public Uid()
        Create a new instance.
      • Uid

        public Uid​(Uid copyFrom)
        Create a copy of the specified identifier.
      • Uid

        public Uid​(byte[] byteForm)
      • Uid

        public Uid​(java.lang.String uidString)
        Create Uid from string representation. If the string does not represent a valid Uid then the instance will be set to nullUid.
      • Uid

        public Uid​(java.lang.String uidString,
                   boolean errsOk)
        Create Uid from string representation. boolean arg says whether to give up if an error is detected or to simply replace with nullUid.
      • Uid

        public Uid​(long[] addr,
                   int processId,
                   int time,
                   int incr)
    • Method Detail

      • hashCode

        public int hashCode()
        Override Object.hashCode. We always return a positive value.
        Overrides:
        hashCode in class java.lang.Object
      • print

        public void print​(java.io.PrintStream strm)
        Print a human-readable form of the Uid.
      • stringForm

        public java.lang.String stringForm()
      • fileStringForm

        public java.lang.String fileStringForm()
        Returns:
        a string representation of the Uid with all : replaced by _ so that the name may be used as a file name.
      • getBytes

        public byte[] getBytes()
        Get the byte representation of the Uid. Useful for packing and creating other representations of transaction ids.
        Returns:
        the byte array. Cached once created.
      • toString

        public java.lang.String toString()
        Same as stringForm()
        Overrides:
        toString in class java.lang.Object
      • getHexPid

        public java.lang.String getHexPid()
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Create a copy of this instance.
        Overrides:
        clone in class java.lang.Object
        Throws:
        java.lang.CloneNotSupportedException
      • equals

        public boolean equals​(java.lang.Object o)
        Override Object.equals
        Overrides:
        equals in class java.lang.Object
      • equals

        public boolean equals​(Uid u)
      • notEquals

        public boolean notEquals​(Uid u)
      • lessThan

        public boolean lessThan​(Uid u)
      • greaterThan

        public boolean greaterThan​(Uid u)
      • valid

        public final boolean valid()
        Is the Uid valid?
      • nullUid

        public static final Uid nullUid()
        Return a null Uid (0:0:0:0:0)
      • lastResourceUid

        public static final Uid lastResourceUid()
        Return a last resource Uid (0:0:0:0:1)
      • maxUid

        public static final Uid maxUid()
        Return the maximum Uid (7fffffffffffffff:7fffffffffffffff:7fffffff:7fffffff:7fffffff)
      • minUid

        public static final Uid minUid()
        Return the minimum Uid (-8000000000000000:-8000000000000000:-80000000:-80000000:-80000000)