|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.hibernate.util.SerializationHelper
public final class SerializationHelper
Assists with the serialization process and performs additional functionality based on serialization.
This class throws exceptions for invalid null
inputs.
Each method documents its behaviour in more detail.
Method Summary | |
---|---|
static Object |
clone(Serializable object)
Deep clone an Object using serialization. |
static ClassLoader |
defaultClassLoader()
Returns the Thread Context ClassLoader (TCCL). |
static Object |
deserialize(byte[] objectData)
Deserializes an object from an array of bytes using the Thread Context ClassLoader (TCCL). |
static Object |
deserialize(byte[] objectData,
ClassLoader loader)
Deserializes an object from an array of bytes. |
static Object |
deserialize(InputStream inputStream)
Deserializes an object from the specified stream using the Thread Context ClassLoader (TCCL). |
static Object |
deserialize(InputStream inputStream,
ClassLoader loader)
Deserializes an object from the specified stream using the Thread Context ClassLoader (TCCL). |
static Object |
doDeserialize(InputStream inputStream,
ClassLoader loader,
ClassLoader fallbackLoader1,
ClassLoader fallbackLoader2)
|
static ClassLoader |
hibernateClassLoader()
|
static byte[] |
serialize(Serializable obj)
Serializes an Object to a byte array for
storage/serialization. |
static void |
serialize(Serializable obj,
OutputStream outputStream)
Serializes an Object to the specified stream. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static Object clone(Serializable object) throws SerializationException
Deep clone an Object
using serialization.
This is many times slower than writing clone methods by hand
on all objects in your object graph. However, for complex object
graphs, or for those that don't support deep cloning this can
be a simple alternative implementation. Of course all the objects
must be Serializable
.
object
- the Serializable
object to clone
SerializationException
- (runtime) if the serialization failspublic static void serialize(Serializable obj, OutputStream outputStream) throws SerializationException
Serializes an Object
to the specified stream.
The stream will be closed once the object is written. This avoids the need for a finally clause, and maybe also exception handling, in the application code.
The stream passed in is not buffered internally within this method. This is the responsibility of your application if desired.
obj
- the object to serialize to bytes, may be nulloutputStream
- the stream to write to, must not be null
IllegalArgumentException
- if outputStream
is null
SerializationException
- (runtime) if the serialization failspublic static byte[] serialize(Serializable obj) throws SerializationException
Serializes an Object
to a byte array for
storage/serialization.
obj
- the object to serialize to bytes
SerializationException
- (runtime) if the serialization failspublic static Object deserialize(InputStream inputStream) throws SerializationException
doDeserialize(java.io.InputStream, java.lang.ClassLoader, java.lang.ClassLoader, java.lang.ClassLoader)
inputStream
- the serialized object input stream, must not be null
IllegalArgumentException
- if inputStream
is null
SerializationException
- (runtime) if the serialization failspublic static ClassLoader defaultClassLoader()
public static ClassLoader hibernateClassLoader()
public static Object deserialize(InputStream inputStream, ClassLoader loader) throws SerializationException
inputStream
- the serialized object input stream, must not be nullloader
- The classloader to use
IllegalArgumentException
- if inputStream
is null
SerializationException
- (runtime) if the serialization failspublic static Object doDeserialize(InputStream inputStream, ClassLoader loader, ClassLoader fallbackLoader1, ClassLoader fallbackLoader2) throws SerializationException
SerializationException
public static Object deserialize(byte[] objectData) throws SerializationException
deserialize(byte[], ClassLoader)
objectData
- the serialized object, must not be null
IllegalArgumentException
- if objectData
is null
SerializationException
- (runtime) if the serialization failspublic static Object deserialize(byte[] objectData, ClassLoader loader) throws SerializationException
deserialize(java.io.InputStream, ClassLoader)
using a
ByteArrayInputStream
to wrap the array.
objectData
- the serialized object, must not be nullloader
- The classloader to use
IllegalArgumentException
- if objectData
is null
SerializationException
- (runtime) if the serialization fails
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |