- java.lang.Object
-
- javax.sql.rowset.serial.SerialRef
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Ref
public class SerialRef extends Object implements Ref, Serializable, Cloneable
A serialized mapping of aRef
object, which is the mapping in the Java programming language of an SQLREF
value.The
SerialRef
class provides a constructor for creating aSerialRef
instance from aRef
object and provides methods for getting and setting theRef
object.Thread safety
A SerialRef is not safe for use by multiple concurrent threads. If a SerialRef is to be used by more than one thread then access to the SerialRef should be controlled by appropriate synchronization.- Since:
- 1.5
- See Also:
- Serialized Form
-
-
Method Summary
Modifier and Type Method Description Object
clone()
Returns a clone of thisSerialRef
.boolean
equals(Object obj)
Compares this SerialRef to the specified object.String
getBaseTypeName()
Returns a string describing the base type name of theRef
.Object
getObject()
Returns anObject
representing the SQL structured type to which thisSerialRef
object refers.Object
getObject(Map<String,Class<?>> map)
Returns anObject
representing the SQL structured type to which thisSerialRef
object refers.int
hashCode()
Returns a hash code for thisSerialRef
.void
setObject(Object obj)
Sets the SQL structured type that thisSerialRef
object references to the givenObject
object.
-
-
-
Constructor Detail
-
SerialRef
public SerialRef(Ref ref) throws SerialException, SQLException
Constructs aSerialRef
object from the givenRef
object.- Parameters:
ref
- a Ref object; cannot benull
- Throws:
SQLException
- if a database access occurs; ifref
isnull
; or if theRef
object returns anull
value base type name.SerialException
- if an error occurs serializing theRef
object
-
-
Method Detail
-
getBaseTypeName
public String getBaseTypeName() throws SerialException
Returns a string describing the base type name of theRef
.- Specified by:
getBaseTypeName
in interfaceRef
- Returns:
- a string of the base type name of the Ref
- Throws:
SerialException
- in no Ref object has been set
-
getObject
public Object getObject(Map<String,Class<?>> map) throws SerialException
Returns anObject
representing the SQL structured type to which thisSerialRef
object refers. The attributes of the structured type are mapped according to the given type map.- Specified by:
getObject
in interfaceRef
- Parameters:
map
- ajava.util.Map
object containing zero or more entries, with each entry consisting of 1) aString
giving the fully qualified name of a UDT and 2) theClass
object for theSQLData
implementation that defines how the UDT is to be mapped- Returns:
- an object instance resolved from the Ref reference and mapped according to the supplied type map
- Throws:
SerialException
- if an error is encountered in the reference resolution- See Also:
Ref.setObject(java.lang.Object)
-
getObject
public Object getObject() throws SerialException
Returns anObject
representing the SQL structured type to which thisSerialRef
object refers.- Specified by:
getObject
in interfaceRef
- Returns:
- an object instance resolved from the Ref reference
- Throws:
SerialException
- if an error is encountered in the reference resolution- See Also:
Ref.setObject(java.lang.Object)
-
setObject
public void setObject(Object obj) throws SerialException
Sets the SQL structured type that thisSerialRef
object references to the givenObject
object.- Specified by:
setObject
in interfaceRef
- Parameters:
obj
- anObject
representing the SQL structured type to be referenced- Throws:
SerialException
- if an error is encountered generating the the structured type referenced by thisSerialRef
object- See Also:
Ref.getObject()
,Ref.getObject(Map)
,PreparedStatement.setObject(int, Object)
,CallableStatement.setObject(String, Object)
-
equals
public boolean equals(Object obj)
Compares this SerialRef to the specified object. The result istrue
if and only if the argument is notnull
and is aSerialRef
object that represents the same object as this object.- Overrides:
equals
in classObject
- Parameters:
obj
- The object to compare thisSerialRef
against- Returns:
true
if the given object represents aSerialRef
equivalent to this SerialRef,false
otherwise- See Also:
Object.hashCode()
,HashMap
-
hashCode
public int hashCode()
Returns a hash code for thisSerialRef
.- Overrides:
hashCode
in classObject
- Returns:
- a hash code value for this object.
- See Also:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
-