public class UUID extends totalcross.lang.Object
UUIDclass defines universally unique identifiers. These 128-bit unsigned integers are guaranteed to be unique across all time and space. Accordingly, an instance of this class is immutable. The Bluetooth specification provides an algorithm describing how a 16-bit or 32-bit UUID could be promoted to a 128-bit UUID. Accordingly, this class provides an interface that assists applications in creating 16-bit, 32-bit, and 128-bit long UUIDs. The methods supported by this class allow equality testing of two UUID objects.
The Bluetooth Assigned Numbers document ( http://www.bluetooth.org/assigned-numbers/sdp.htm) defines a large number of UUIDs for protocols and service classes. The table below provides a short list of the most common UUIDs defined in the Bluetooth Assigned Numbers document.
|Base UUID Value (Used in promoting 16-bit and 32-bit UUIDs to 128-bit UUIDs)||0x0000000000001000800000805F9B34FB||128-bit|
|OBEX totalcross.lang.Object Push Profile||0x1105||16-bit|
|OBEX File Transfer Profile||0x1106||16-bit|
|Personal Area Networking User||0x1115||16-bit|
|Network Access Point||0x1116||16-bit|
|Constructor and Description|
|Modifier and Type||Method and Description|
Determines if two
Computes the hash code for this object.
Returns the string representation of the 128-bit UUID object.
public UUID(long uuidValue)
uuidValue. A UUID is defined as an unsigned integer whose value can range from [0 to 2128-1]. However, this constructor allows only those values that are in the range of [0 to 232 -1]. Negative values and values in the range of [232, 263 -1] are not allowed and will cause an
IllegalArgumentExceptionto be thrown.
uuidValue- the 16-bit or 32-bit value of the UUID
uuidValueis not in the range [0, 232 -1]
public UUID(String uuidValue, boolean shortUUID)
UUIDobject from the string provided. The characters in the string must be from the hexadecimal set [0-9, a-f, A-F]. It is important to note that the prefix "0x" generally used for hex representation of numbers is not allowed. If the string does not have characters from the hexadecimal set, an exception will be thrown. The string length has to be positive and less than or equal to 32. A string length that exceeds 32 is illegal and will cause an exception. Finally, a
nullinput is also considered illegal and causes an exception.
represents a 16-bit or 32-bit UUID. If
uuidValue is in the range 0x0000 to 0xFFFF then this
constructor will create a 16-bit UUID. If
uuidValue is in the range 0x000010000 to 0xFFFFFFFF, then
this constructor will create a 32-bit UUID. Therefore,
uuidValue may only be 8 characters long.
On the other hand, if
uuidValue represents a
128-bit UUID. Therefore,
uuidValue may only be 32 character long.
uuidValue- the string representation of a 16-bit, 32-bit or 128-bit UUID
shortUUID- indicates the size of the UUID to be constructed;
trueis used to indicate short UUIDs, i.e. either 16-bit or 32-bit;
falseindicates an 128-bit UUID
uuidValuehas characters that are not defined in the hexadecimal set [0-9, a-f, A-F]; if
uuidValuelength is zero; if
uuidValue's length is greater than 8; if
uuidValue's length is greater than 32
public boolean equals(Object value)
UUIDs are equal. They are equal if their 128 bit values are the same. This method will return
nullor is not a
value- the object to compare to
trueif the 128 bit values of the two objects are equal, otherwise
public int hashCode()
totalcross.lang.Objectwhile overriding the implementation.
public String toString()