org.h2.value
Class ValueUuid

java.lang.Object
  extended by org.h2.value.Value
      extended by org.h2.value.ValueUuid

public class ValueUuid
extends Value

Implementation of the UUID data type.


Field Summary
 
Fields inherited from class org.h2.value.Value
ARRAY, BLOB, BOOLEAN, BYTE, BYTES, CLOB, DATE, DECIMAL, DOUBLE, FLOAT, INT, JAVA_OBJECT, LONG, NULL, RESULT_SET, SHORT, STRING, STRING_FIXED, STRING_IGNORECASE, TIME, TIMESTAMP, TYPE_COUNT, UNKNOWN, UUID
 
Method Summary
protected  int compareSecure(Value o, CompareMode mode)
          Compare the value with another value of the same type.
 boolean equals(java.lang.Object other)
          Check if the two values are equal.
static ValueUuid get(byte[] binary)
          Get or create a UUID for the given 32 bytes.
static ValueUuid get(long high, long low)
          Get or create a UUID for the given high and low order values.
static ValueUuid get(java.lang.String s)
          Get or create a UUID for the given text representation.
 byte[] getBytes()
           
 int getDisplaySize()
          Get the display size in characters.
 long getHigh()
          Get the most significant 64 bits of this UUID.
 long getLow()
          Get the least significant 64 bits of this UUID.
static ValueUuid getNewRandom()
          Create a new UUID using the pseudo random number generator.
 java.lang.Object getObject()
          Get the value as an object.
 long getPrecision()
          Get the precision.
 java.lang.String getSQL()
          Get the SQL expression for this value.
 java.lang.String getString()
          Get the value as a string.
 int getType()
          Get the value type.
 int hashCode()
           
 void set(java.sql.PreparedStatement prep, int parameterIndex)
          Set the value as a parameter in a prepared statement.
 
Methods inherited from class org.h2.value.Value
add, checkPrecision, close, compareEqual, compareTo, compareTypeSave, convertPrecision, convertScale, convertTo, divide, getBigDecimal, getBoolean, getByte, getBytesNoCopy, getDate, getDateNoCopy, getDouble, getFloat, getHigherOrder, getInputStream, getInt, getLong, getMemory, getReader, getScale, getShort, getSignum, getTime, getTimeNoCopy, getTimestamp, getTimestampNoCopy, getTraceSQL, isFileBased, isLinked, link, multiply, negate, subtract, throwUnsupportedExceptionForType, toString, unlink
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

hashCode

public int hashCode()
Specified by:
hashCode in class Value

getNewRandom

public static ValueUuid getNewRandom()
Create a new UUID using the pseudo random number generator.

Returns:
the new UUID

get

public static ValueUuid get(byte[] binary)
Get or create a UUID for the given 32 bytes.

Parameters:
binary - the byte array (must be at least 32 bytes long)
Returns:
the UUID

get

public static ValueUuid get(long high,
                            long low)
Get or create a UUID for the given high and low order values.

Parameters:
high - the most significant bits
low - the least significant bits
Returns:
the UUID

get

public static ValueUuid get(java.lang.String s)
Get or create a UUID for the given text representation.

Parameters:
s - the text representation of the UUID
Returns:
the UUID

getSQL

public java.lang.String getSQL()
Description copied from class: Value
Get the SQL expression for this value.

Specified by:
getSQL in class Value
Returns:
the SQL expression

getType

public int getType()
Description copied from class: Value
Get the value type.

Specified by:
getType in class Value
Returns:
the type

getPrecision

public long getPrecision()
Description copied from class: Value
Get the precision.

Specified by:
getPrecision in class Value
Returns:
the precision

getString

public java.lang.String getString()
Description copied from class: Value
Get the value as a string.

Specified by:
getString in class Value
Returns:
the string

compareSecure

protected int compareSecure(Value o,
                            CompareMode mode)
Description copied from class: Value
Compare the value with another value of the same type.

Specified by:
compareSecure in class Value
Parameters:
o - the other value
mode - the compare mode
Returns:
0 if both values are equal, -1 if the other value is smaller, and 1 otherwise

equals

public boolean equals(java.lang.Object other)
Description copied from class: Value
Check if the two values are equal. No data conversion is made; this method returns false if the other object is not of the same class.

Specified by:
equals in class Value
Parameters:
other - the other value
Returns:
true if they are equal

getObject

public java.lang.Object getObject()
Description copied from class: Value
Get the value as an object.

Specified by:
getObject in class Value
Returns:
the object

getBytes

public byte[] getBytes()
Overrides:
getBytes in class Value

set

public void set(java.sql.PreparedStatement prep,
                int parameterIndex)
         throws java.sql.SQLException
Description copied from class: Value
Set the value as a parameter in a prepared statement.

Specified by:
set in class Value
Parameters:
prep - the prepared statement
parameterIndex - the parameter index
Throws:
java.sql.SQLException

getHigh

public long getHigh()
Get the most significant 64 bits of this UUID.

Returns:
the high order bits

getLow

public long getLow()
Get the least significant 64 bits of this UUID.

Returns:
the low order bits

getDisplaySize

public int getDisplaySize()
Description copied from class: Value
Get the display size in characters.

Specified by:
getDisplaySize in class Value
Returns:
the display size