Package org.infinispan.commons.marshall
Class InstanceReusingAdvancedExternalizer<T>
- java.lang.Object
-
- org.infinispan.commons.marshall.AbstractExternalizer<T>
-
- org.infinispan.commons.marshall.InstanceReusingAdvancedExternalizer<T>
-
- All Implemented Interfaces:
Serializable
,AdvancedExternalizer<T>
,Externalizer<T>
- Direct Known Subclasses:
CacheTopology.Externalizer
,JGroupsAddress.Externalizer
,JGroupsTopologyAwareAddress.Externalizer
,ManagerStatusResponse.Externalizer
public abstract class InstanceReusingAdvancedExternalizer<T> extends AbstractExternalizer<T>
An advanced externalizer that when implemented will allow for child instances that also extend this class to use object instances instead of serializing a brand new object.- Since:
- 7.1
- Author:
- wburns
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description InstanceReusingAdvancedExternalizer()
InstanceReusingAdvancedExternalizer(boolean hasChildren)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract T
doReadObject(ObjectInput input)
abstract void
doWriteObject(ObjectOutput output, T object)
T
readObject(ObjectInput input)
Read an instance from the stream.void
writeObject(ObjectOutput output, T object)
Write the object reference to the stream.-
Methods inherited from class org.infinispan.commons.marshall.AbstractExternalizer
getId
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.infinispan.commons.marshall.AdvancedExternalizer
getTypeClasses
-
-
-
-
Method Detail
-
writeObject
public final void writeObject(ObjectOutput output, T object) throws IOException
Description copied from interface:Externalizer
Write the object reference to the stream.- Parameters:
output
- the object output to write toobject
- the object reference to write- Throws:
IOException
- if an I/O error occurs
-
doWriteObject
public abstract void doWriteObject(ObjectOutput output, T object) throws IOException
- Throws:
IOException
-
readObject
public final T readObject(ObjectInput input) throws IOException, ClassNotFoundException
Description copied from interface:Externalizer
Read an instance from the stream. The instance will have been written by theExternalizer.writeObject(ObjectOutput, Object)
method. Implementations are free to create instances of the object read from the stream in any way that they feel like. This could be via constructor, factory or reflection.- Parameters:
input
- the object input to read from- Returns:
- the object instance
- Throws:
IOException
- if an I/O error occursClassNotFoundException
- if a class could not be found
-
doReadObject
public abstract T doReadObject(ObjectInput input) throws IOException, ClassNotFoundException
- Throws:
IOException
ClassNotFoundException
-
-