public interface Serializer
T
to an
output stream and read the object back in from an input stream.Modifier and Type | Method and Description |
---|---|
<T> boolean |
canSerializeTo(Class<T> expectedRepresentation)
Indicates whether this Serializer is capable of serializing to the given
expectedRepresentation . |
Class |
classForType(SerializedType type)
Returns the class for the given type identifier.
|
<S,T> T |
deserialize(SerializedObject<S> serializedObject)
Deserializes the first object read from the given
bytes . |
Converter |
getConverter()
Returns the
Converter used by this Serializer to convert between serialized representations. |
<T> SerializedObject<T> |
serialize(Object object,
Class<T> expectedRepresentation)
Serialize the given
object into a Serialized Object containing the given
expectedRepresentation . |
SerializedType |
typeForClass(Class type)
Returns the type identifier for the given class.
|
<T> SerializedObject<T> serialize(@Nullable Object object, @Nonnull Class<T> expectedRepresentation)
object
into a Serialized Object containing the given
expectedRepresentation
.
Use canSerializeTo(Class)
to detect whether the expectedRepresentation
is supported by
this serializer.T
- The expected data type representing the serialized objectobject
- The object to serializeexpectedRepresentation
- The expected data type representing the serialized object<T> boolean canSerializeTo(@Nonnull Class<T> expectedRepresentation)
expectedRepresentation
.
When true
, this does *not* guarantee that the serialization and (optional) conversion will also
succeed when executed. For example, when a serializer produces a byte[]
containing JSON, trying to
convert to a Dom4J Document will fail, even though this serializer has a converter to convert
byte[]
to Dom4J instances.T
- The type of data a Serialized Object should containexpectedRepresentation
- The type of data a Serialized Object should containtrue
if the expectedRepresentation
is supported, otherwise false
.<S,T> T deserialize(@Nonnull SerializedObject<S> serializedObject)
bytes
. The bytes
are not consumed
from the array or modified in any way. The resulting object instance is cast to the expected type.S
- The data type of the serialized objectT
- The expected deserialized typeserializedObject
- the instance describing the type of object and the bytes providing the serialized dataClassCastException
- if the first object in the stream is not an instance of <T>.Class classForType(@Nonnull SerializedType type)
type
is an instance of the returned Class.
If a class cannot be resolved (i.e. because the class is not available on this JVM's classpath) this method
returns an UnknownSerializedType
instance which proides access to the raw underlying data.type
- The type identifier of the objectSerializedType typeForClass(@Nullable Class type)
serialize(Object, Class)
.type
- Class representing the type of the serializable Object.Copyright © 2010–2024. All rights reserved.