Class SerialJavaObject

  • All Implemented Interfaces:
    Serializable, Cloneable

    public class SerialJavaObject
    extends Object
    implements Serializable, Cloneable
    A serializable mapping in the Java programming language of an SQL JAVA_OBJECT value. Assuming the Java object implements the Serializable interface, this class simply wraps the serialization process.

    If however, the serialization is not possible because the Java object is not immediately serializable, this class will attempt to serialize all non-static members to permit the object state to be serialized. Static or transient fields cannot be serialized; an attempt to serialize them will result in a SerialException object being thrown.

    Thread safety

    A SerialJavaObject is not safe for use by multiple concurrent threads. If a SerialJavaObject is to be used by more than one thread then access to the SerialJavaObject should be controlled by appropriate synchronization.
    Since:
    1.5
    See Also:
    Serialized Form
    • Constructor Detail

      • SerialJavaObject

        public SerialJavaObject​(Object obj)
                         throws SerialException
        Constructor for SerialJavaObject helper class.
        Parameters:
        obj - the Java Object to be serialized
        Throws:
        SerialException - if the object is found not to be serializable
    • Method Detail

      • getObject

        public Object getObject()
                         throws SerialException
        Returns an Object that is a copy of this SerialJavaObject object.
        Returns:
        a copy of this SerialJavaObject object as an Object in the Java programming language
        Throws:
        SerialException - if the instance is corrupt
      • getFields

        public Field[] getFields()
                          throws SerialException
        Returns an array of Field objects that contains each field of the object that this helper class is serializing.
        Returns:
        an array of Field objects
        Throws:
        SerialException - if an error is encountered accessing the serialized object
        SecurityException - If a security manager, s, is present and the caller's class loader is not the same as or an ancestor of the class loader for the class of the object being serialized and invocation of s.checkPackageAccess() denies access to the package of that class.
        See Also:
        Class.getFields()
      • equals

        public boolean equals​(Object o)
        Compares this SerialJavaObject to the specified object. The result is true if and only if the argument is not null and is a SerialJavaObject object that is identical to this object
        Overrides:
        equals in class Object
        Parameters:
        o - The object to compare this SerialJavaObject against
        Returns:
        true if the given object represents a SerialJavaObject equivalent to this SerialJavaObject, false otherwise
        See Also:
        Object.hashCode(), HashMap
      • clone

        public Object clone()
        Returns a clone of this SerialJavaObject.
        Overrides:
        clone in class Object
        Returns:
        a clone of this SerialJavaObject
        See Also:
        Cloneable