Interface StreamAwareMarshaller

  • All Known Subinterfaces:
    PersistenceMarshaller

    @ThreadSafe
    public interface StreamAwareMarshaller
    A minimal interface that facilitates the marshalling/unmarshalling of objects from the provided InputStream/OutputStream. Unlike the deprecated StreamingMarshaller this interface does not rely on the use of ObjectInput and ObjectOutput to read/write objects, which provides greater flexibility when marshalling objects to streams using third party libraries.
    Since:
    10.0
    Author:
    Ryan Emerson
    • Method Detail

      • 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

        MediaType mediaType()
        Returns:
        the MediaType associated with the content produced by the marshaller