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
,DefaultConsistentHash.Externalizer
,JGroupsAddress.Externalizer
,JGroupsTopologyAwareAddress.Externalizer
,ManagerStatusResponse.Externalizer
,ReplicatedConsistentHash.Externalizer
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:
-
Field Summary
Fields inherited from interface org.infinispan.commons.marshall.AdvancedExternalizer
USER_EXT_ID_MIN
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionabstract T
doReadObject
(ObjectInput input) abstract void
doWriteObject
(ObjectOutput output, T object) final T
readObject
(ObjectInput input) Read an instance from the stream.final 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
-
Constructor Details
-
InstanceReusingAdvancedExternalizer
public InstanceReusingAdvancedExternalizer() -
InstanceReusingAdvancedExternalizer
public InstanceReusingAdvancedExternalizer(boolean hasChildren)
-
-
Method Details
-
writeObject
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
- Throws:
IOException
-
readObject
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
- Throws:
IOException
ClassNotFoundException
-