org.jboss.util.id
Class UID

java.lang.Object
  extended byorg.jboss.util.id.UID
All Implemented Interfaces:
java.lang.Cloneable, ID (src) , java.io.Serializable

public class UID
extends java.lang.Object
implements ID (src)

A unique identifier (uniqueness only guarantied inside of the virtual machine in which it was created).

The identifier is composed of:

  1. A long generated from the current system time (in milliseconds).
  2. A long generated from a counter (which is the number of UID objects that have been created durring the life of the executing virtual machine).
    [ time ] - [ counter ]
 

Numbers are converted to radix(Character.MAX_RADIX) when converting to strings.

This should provide adequate uniqueness for most purposes.

See Also:
Serialized Form

Field Summary
protected static MuLong (src) COUNTER
          A counter for generating identity values
protected  long id
          The identity portion of the UID
protected  long time
          The time portion of the UID
 
Constructor Summary
  UID()
          Construct a new UID.
protected UID(UID (src)  uid)
          Copy a UID.
 
Method Summary
static java.lang.String asString()
          Returns a UID as a string.
 java.lang.Object clone()
          Returns a copy of this UID.
 boolean equals(java.lang.Object obj)
          Checks if the given object is equal to this UID.
 long getID()
          Get the identity portion of this UID.
 long getTime()
          Get the time portion of this UID.
 int hashCode()
          Return the hash code of this UID.
 java.lang.String toString()
          Return a string representation of this UID.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

COUNTER

protected static final MuLong (src)  COUNTER
A counter for generating identity values


time

protected final long time
The time portion of the UID


id

protected final long id
The identity portion of the UID

Constructor Detail

UID

public UID()
Construct a new UID.


UID

protected UID(UID (src)  uid)
Copy a UID.

Method Detail

getTime

public final long getTime()
Get the time portion of this UID.

Returns:
The time portion of this UID.

getID

public final long getID()
Get the identity portion of this UID.

Returns:
The identity portion of this UID.

toString

public java.lang.String toString()
Return a string representation of this UID.

Returns:
A string representation of this UID.

hashCode

public int hashCode()
Return the hash code of this UID.

Returns:
The hash code of this UID.

equals

public boolean equals(java.lang.Object obj)
Checks if the given object is equal to this UID.

Parameters:
obj - Object to test equality with.
Returns:
True if object is equal to this UID.

clone

public java.lang.Object clone()
Returns a copy of this UID.

Returns:
A copy of this UID.

asString

public static java.lang.String asString()
Returns a UID as a string.

Returns:
UID as a string.