org.jboss.util.id
Class UID

java.lang.Object
  extended by org.jboss.util.id.UID
All Implemented Interfaces:
Serializable, Cloneable, ID

public class UID
extends Object
implements ID

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.

Version:
$Revision: 1.4.6.2 $
Author:
Jason Dillon
See Also:
Serialized Form

Field Summary
protected static EDU.oswego.cs.dl.util.concurrent.SynchronizedLong 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 uid)
          Copy a UID.
 
Method Summary
static String asString()
          Returns a UID as a string.
 Object clone()
          Returns a copy of this UID.
 boolean equals(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.
 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 EDU.oswego.cs.dl.util.concurrent.SynchronizedLong 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 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 String toString()
Return a string representation of this UID.

Overrides:
toString in class Object
Returns:
A string representation of this UID.

hashCode

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

Overrides:
hashCode in class Object
Returns:
The hash code of this UID.

equals

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

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

clone

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

Overrides:
clone in class Object
Returns:
A copy of this UID.

asString

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

Returns:
UID as a string.


Copyright © 2002 JBoss Group, LLC. All Rights Reserved.