Package org.infinispan.commons.marshall
Interface StreamAwareMarshaller
-
- All Known Subinterfaces:
PersistenceMarshaller
@ThreadSafe public interface StreamAwareMarshaller
A minimal interface that facilitates the marshalling/unmarshalling of objects from the providedInputStream
/OutputStream
. Unlike the deprecatedStreamingMarshaller
this interface does not rely on the use ofObjectInput
andObjectOutput
to read/write objects, which provides greater flexibility when marshalling objects to streams using third party libraries.- Since:
- 10.0
- Author:
- Ryan Emerson
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
isMarshallable(Object o)
A method that checks whether the given object is marshallable as per the rules of this marshaller.org.infinispan.commons.dataconversion.MediaType
mediaType()
Object
readObject(InputStream in)
Unmarshall an object from theInputStream
int
sizeEstimate(Object o)
An method that provides an estimate of the buffer size that will be required once the object has been marshalled.void
writeObject(Object o, OutputStream out)
Marshall an object to theOutputStream
-
-
-
Method Detail
-
writeObject
void writeObject(Object o, OutputStream out) throws IOException
Marshall an object to theOutputStream
- Parameters:
o
- the object to write to theOutputStream
out
- theOutputStream
to write the object to- Throws:
IOException
- if the object cannot be marshalled to theOutputStream
due to some I/O error
-
readObject
Object readObject(InputStream in) throws ClassNotFoundException, IOException
Unmarshall an object from theInputStream
- Parameters:
in
- theInputStream
to unmarshall an object from- Returns:
- the unmarshalled object instance
- Throws:
IOException
- if unmarshalling cannot complete due to some I/O errorClassNotFoundException
- if the class of the object trying to unmarshall is not found
-
isMarshallable
boolean isMarshallable(Object o)
A method that checks whether the given object is marshallable as per the rules of this marshaller.- Parameters:
o
- object to verify whether it's marshallable or not- Returns:
- true if the object is marshallable, otherwise false
-
sizeEstimate
int sizeEstimate(Object o)
An method that provides an estimate of the buffer size that will be required once the object has been marshalled.- Parameters:
o
- instance that will be stored in the buffer.- Returns:
- int representing the next predicted buffer size.
-
mediaType
org.infinispan.commons.dataconversion.MediaType mediaType()
- Returns:
- the
MediaType
associated with the content produced by the marshaller
-
-