Build 1.0_r1(from source)

java.util
Class UUID

java.lang.Object
  extended by java.util.UUID
All Implemented Interfaces:
Serializable, Comparable<UUID>

public final class UUID
extends Object
implements Serializable, Comparable<UUID>

UUID is an immutable representation of a 128-bit universally unique identifier (UUID).

There are multiple, variant layouts of UUIDs, but this class is based upon variant 2 of RFC 4122, the Leach-Salz variant. This class can be used to model alternate variants, but most of the methods will be unsupported in those cases; see each method for details.

Since:
1.5
See Also:
Serialized Form

Constructor Summary
UUID(long mostSigBits, long leastSigBits)
           Constructs an instance with the specified bits.
 
Method Summary
 int clockSequence()
           The clock sequence value of the version 1, variant 2 UUID as per RFC 4122.
 int compareTo(UUID uuid)
           Compares this UUID to the specified UUID.
 boolean equals(Object object)
           Compares this UUID to another object for equality.
static UUID fromString(String uuid)
           Parses a UUID string with the format defined by toString().
 long getLeastSignificantBits()
           The 64 least significant bits of the UUID.
 long getMostSignificantBits()
           The 64 most significant bits of the UUID.
 int hashCode()
           Returns a hash value for this UUID that is consistent with the equals(Object) method.
static UUID nameUUIDFromBytes(byte[] name)
           Generates a variant 2, version 3 (name-based, MD5-hashed) UUID as per RFC 4122.
 long node()
           The node value of the version 1, variant 2 UUID as per RFC 4122.
static UUID randomUUID()
           Generates a variant 2, version 4 (randomly generated number) UUID as per RFC 4122.
 long timestamp()
           The timestamp value of the version 1, variant 2 UUID as per RFC 4122.
 String toString()
           Returns a string representation of this UUID in the following format, as per RFC 4122.
 int variant()
           The variant of the UUID as per RFC 4122.
 int version()
           The version of the variant 2 UUID as per RFC 4122.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UUID

public UUID(long mostSigBits,
            long leastSigBits)

Constructs an instance with the specified bits.

Parameters:
mostSigBits - The 64 most significant bits of the UUID.
leastSigBits - The 64 least significant bits of the UUID.
Method Detail

randomUUID

public static UUID randomUUID()

Generates a variant 2, version 4 (randomly generated number) UUID as per RFC 4122.

Returns:
A UUID instance.

nameUUIDFromBytes

public static UUID nameUUIDFromBytes(byte[] name)

Generates a variant 2, version 3 (name-based, MD5-hashed) UUID as per RFC 4122.

Returns:
A UUID instance.

fromString

public static UUID fromString(String uuid)

Parses a UUID string with the format defined by toString().

Parameters:
uuid - The UUID string to parse.
Returns:
A UUID instance.
Throws:
NullPointerException - if uuid is null.
IllegalArgumentException - if uuid is not formatted correctly.

getLeastSignificantBits

public long getLeastSignificantBits()

The 64 least significant bits of the UUID.

Returns:
A long value.

getMostSignificantBits

public long getMostSignificantBits()

The 64 most significant bits of the UUID.

Returns:
A long value.

version

public int version()

The version of the variant 2 UUID as per RFC 4122. If the variant is not 2, then the version will be 0.

Returns:
An int value.

variant

public int variant()

The variant of the UUID as per RFC 4122.

Returns:
An int value.

timestamp

public long timestamp()

The timestamp value of the version 1, variant 2 UUID as per RFC 4122.

Returns:
A long value.
Throws:
UnsupportedOperationException - if version() is not 1.

clockSequence

public int clockSequence()

The clock sequence value of the version 1, variant 2 UUID as per RFC 4122.

Returns:
A long value.
Throws:
UnsupportedOperationException - if version() is not 1.

node

public long node()

The node value of the version 1, variant 2 UUID as per RFC 4122.

Returns:
A long value.
Throws:
UnsupportedOperationException - if version() is not 1.

compareTo

public int compareTo(UUID uuid)

Compares this UUID to the specified UUID. The natural ordering of UUIDs is based upon the value of the bits from most significant to least significant.

Specified by:
compareTo in interface Comparable<UUID>
Parameters:
uuid - The UUID to compare to.
Returns:
A value of -1, 0 or 1 if this UUID is less than, equal to or greater than uuid.

equals

public boolean equals(Object object)

Compares this UUID to another object for equality. If object is not null, a UUID instance and all bits are equals, then true is returned.

Overrides:
equals in class Object
Parameters:
object - The Object to compare to.
Returns:
A true if this UUID is equal to object or false if not.
See Also:
Object.hashCode()

hashCode

public int hashCode()

Returns a hash value for this UUID that is consistent with the equals(Object) method.

Overrides:
hashCode in class Object
Returns:
An int value.
See Also:
Object.equals(java.lang.Object)

toString

public String toString()

Returns a string representation of this UUID in the following format, as per RFC 4122.

            UUID                   = time-low "-" time-mid "-"
                                     time-high-and-version "-"
                                     clock-seq-and-reserved
                                     clock-seq-low "-" node
            time-low               = 4hexOctet
            time-mid               = 2hexOctet
            time-high-and-version  = 2hexOctet
            clock-seq-and-reserved = hexOctet
            clock-seq-low          = hexOctet
            node                   = 6hexOctet
            hexOctet               = hexDigit hexDigit
            hexDigit =
                "0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9" /
                "a" / "b" / "c" / "d" / "e" / "f" /
                "A" / "B" / "C" / "D" / "E" / "F"
 

Overrides:
toString in class Object
Returns:
A String instance.

Build 1.0_r1(from source)

Please submit a feedback, bug or feature