org.expasy.jpl.commons.base.io
Class Serializer<T extends Serializable>

java.lang.Object
  extended by org.expasy.jpl.commons.base.io.Serializer<T>
Type Parameters:
T - the type to (de)serialize

public final class Serializer<T extends Serializable>
extends Object

The serializer just handles (de)serialization of objects T.

Version:
1.0
Author:
nikitin

Constructor Summary
Serializer()
           
 
Method Summary
 T deserialize(byte[] bytes)
          Deserializes a T-object from an array of bytes.
 T deserialize(ByteBuffer buf)
          Deserializes a T-object from a ByteBuffer.
 T deserialize(String filename)
           
static
<T extends Serializable>
Serializer<T>
newInstance()
           
 byte[] serialize(T obj)
          Serializes a T-object.
 void serialize(T obj, String filename)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Serializer

public Serializer()
Method Detail

newInstance

public static <T extends Serializable> Serializer<T> newInstance()

serialize

public void serialize(T obj,
                      String filename)
               throws IOException
Throws:
IOException

deserialize

public T deserialize(String filename)
                                   throws IOException
Throws:
IOException

serialize

public byte[] serialize(T obj)
                 throws IOException
Serializes a T-object.

Parameters:
obj - the object to serialize.
Returns:
an array of bytes.
Throws:
IOException

deserialize

public T deserialize(byte[] bytes)
                                   throws IOException
Deserializes a T-object from an array of bytes.

Parameters:
bytes - the array of bytes.
Throws:
IOException

deserialize

public T deserialize(ByteBuffer buf)
                                   throws IOException
Deserializes a T-object from a ByteBuffer.

Type Parameters:
T - the object type.
Parameters:
buf - the byte buffer.
Returns:
an instance of T-class.
Throws:
IOException


Copyright (c) 2012 Swiss Institute of Bioinformatics. All rights reserved.