public final class ServiceID extends Object implements Serializable
The most significant long can be decomposed into the following unsigned fields:
0xFFFFFFFF00000000 time_low 0x00000000FFFF0000 time_mid 0x000000000000F000 version 0x0000000000000FFF time_hiThe least significant long can be decomposed into the following unsigned fields:
0xC000000000000000 variant 0x3FFF000000000000 clock_seq 0x0000FFFFFFFFFFFF nodeThe variant field must be 0x2. The version field must be either 0x1 or 0x4. If the version field is 0x4, then the remaining fields are set to values produced by a cryptographically secure random sequence. If the version field is 0x1, then the node field is set to an IEEE 802 address, the clock_seq field is set to a 14-bit random number, and the time_low, time_mid, and time_hi fields are set to the least, middle and most significant bits (respectively) of a 60-bit timestamp measured in 100-nanosecond units since midnight, October 15, 1582 UTC.
Constructor and Description |
---|
ServiceID(DataInput in)
Reads in 16 bytes in standard network byte order.
|
ServiceID(long mostSig,
long leastSig)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
Service IDs are equal if they represent the same 128-bit value.
|
long |
getLeastSignificantBits()
Returns the least significant 64 bits of the service ID.
|
long |
getMostSignificantBits()
Returns the most significant 64 bits of the service ID.
|
int |
hashCode() |
String |
toString()
Returns a 36-character string of five fields separated by hyphens, with
each field represented in lowercase hexadecimal with the same number of
digits as in the field.
|
void |
writeBytes(DataOutput out)
Writes out 16 bytes in standard network byte order.
|
public ServiceID(long mostSig, long leastSig)
mostSig
- the most significant 64 bitsleastSig
- the lease significant 64 bitspublic ServiceID(DataInput in) throws IOException
in
- the input stream to read 16 bytes fromIOException
- if there is a problem
reading the most and least significant bitspublic long getMostSignificantBits()
public long getLeastSignificantBits()
public void writeBytes(DataOutput out) throws IOException
out
- the output stream to which 16 bytes should be writtenIOException
- if there is a problem writing the bytespublic boolean equals(Object obj)
public String toString()
time_low
,
time_mid
, version
and time_hi
treated as a single field, variant
and
clock_seq
treated as a single field, and node
.