org.apache.commons.lang

Class SerializationUtils

public class SerializationUtils extends Object

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.

Since: 1.0

Version: $Id: SerializationUtils.java 437554 2006-08-28 06:21:41Z bayard $

Author: Nissim Karpenstein Janek Bogucki Daniel Rall Stephen Colebourne Jeff Varszegi Gary Gregory

Constructor Summary
SerializationUtils()

SerializationUtils instances should NOT be constructed in standard programming.

Method Summary
static Objectclone(Serializable object)

Deep clone an Object using serialization.

This is many times slower than writing clone methods by hand on all objects in your object graph.

static Objectdeserialize(InputStream inputStream)

Deserializes an Object from the specified stream.

The stream will be closed once the object is written.

static Objectdeserialize(byte[] objectData)

Deserializes a single Object from an array of bytes.

static voidserialize(Serializable obj, OutputStream outputStream)

Serializes an Object to the specified stream.

The stream will be closed once the object is written.

static byte[]serialize(Serializable obj)

Serializes an Object to a byte array for storage/serialization.

Constructor Detail

SerializationUtils

public SerializationUtils()

SerializationUtils instances should NOT be constructed in standard programming. Instead, the class should be used as SerializationUtils.clone(object).

This constructor is public to permit tools that require a JavaBean instance to operate.

Since: 2.0

Method Detail

clone

public static Object clone(Serializable object)

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.

Parameters: object the Serializable object to clone

Returns: the cloned object

Throws: SerializationException (runtime) if the serialization fails

deserialize

public static Object deserialize(InputStream inputStream)

Deserializes an Object from 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.

Parameters: inputStream the serialized object input stream, must not be null

Returns: the deserialized object

Throws: IllegalArgumentException if inputStream is null SerializationException (runtime) if the serialization fails

deserialize

public static Object deserialize(byte[] objectData)

Deserializes a single Object from an array of bytes.

Parameters: objectData the serialized object, must not be null

Returns: the deserialized object

Throws: IllegalArgumentException if objectData is null SerializationException (runtime) if the serialization fails

serialize

public static void serialize(Serializable obj, OutputStream outputStream)

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.

Parameters: obj the object to serialize to bytes, may be null outputStream the stream to write to, must not be null

Throws: IllegalArgumentException if outputStream is null SerializationException (runtime) if the serialization fails

serialize

public static byte[] serialize(Serializable obj)

Serializes an Object to a byte array for storage/serialization.

Parameters: obj the object to serialize to bytes

Returns: a byte[] with the converted Serializable

Throws: SerializationException (runtime) if the serialization fails

Copyright © 2001-2005 - Apache Software Foundation