org.ehcache.spi.serialization
Interface Serializer<T>

Type Parameters:
T - the type of the instances to serialize
All Known Implementing Classes:
CharSerializer, CompactJavaSerializer, CompactPersistentJavaSerializer, DoubleSerializer, FloatSerializer, IntegerSerializer, LongSerializer, SoftLockValueCombinedSerializer, StringSerializer

public interface Serializer<T>

Interface defining the contract used to transform types in a serial form. Implementations must be thread-safe. When used within the default serialization provider, there is an additional requirement: The implementations must define either or both of the two constructors:

.


Method Summary
 boolean equals(T object, java.nio.ByteBuffer binary)
          Checks if the given instance and serial form are representations of the same instance.
 T read(java.nio.ByteBuffer binary)
          Reconstructs an instance from the given serial form.
 java.nio.ByteBuffer serialize(T object)
          Transforms the given instance into its serial form.
 

Method Detail

serialize

java.nio.ByteBuffer serialize(T object)
                              throws SerializerException
Transforms the given instance into its serial form.

Parameters:
object - the instance to serialize
Returns:
the binary representation of the serial form
Throws:
SerializerException - if serialization fails

read

T read(java.nio.ByteBuffer binary)
       throws java.lang.ClassNotFoundException,
              SerializerException
Reconstructs an instance from the given serial form.

Parameters:
binary - the binary representation of the serial form
Returns:
the de-serialized instance
Throws:
SerializerException - if reading the byte buffer fails
java.lang.ClassNotFoundException - if the type to de-serialize to cannot be found

equals

boolean equals(T object,
               java.nio.ByteBuffer binary)
               throws java.lang.ClassNotFoundException,
                      SerializerException
Checks if the given instance and serial form are representations of the same instance.

Parameters:
object - the instance to check
binary - the serial form to check
Returns:
true if both parameters represent the same instance, false otherwise
Throws:
SerializerException - if reading the byte buffer fails
java.lang.ClassNotFoundException - if the type to de-serialize to cannot be found