Class ByteArraySingleTerminatorSerializer

All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.context.ApplicationEventPublisherAware, org.springframework.core.serializer.Deserializer<byte[]>, org.springframework.core.serializer.Serializer<byte[]>
Direct Known Subclasses:
ByteArrayLfSerializer

public class ByteArraySingleTerminatorSerializer
extends AbstractPooledBufferByteArraySerializer
Reads data in an InputStream to a byte[]; data must be terminated by a single byte (not included in resulting byte[]). Writes a byte[] to an OutputStream and adds the terminator.
Since:
2.2
  • Constructor Details

  • Method Details

    • doDeserialize

      protected byte[] doDeserialize​(java.io.InputStream inputStream, byte[] buffer) throws java.io.IOException
      Reads the data in the inputStream to a byte[]. Data must be terminated by a single byte. Throws a SoftEndOfStreamException if the stream is closed immediately after the terminator (i.e. no data is in the process of being read).
      Specified by:
      doDeserialize in class AbstractPooledBufferByteArraySerializer
      Parameters:
      inputStream - the input stream.
      buffer - the raw working buffer (maxMessageSize).
      Returns:
      the decoded bytes.
      Throws:
      java.io.IOException - an io exception.
    • serialize

      public void serialize​(byte[] bytes, java.io.OutputStream outputStream) throws java.io.IOException
      Writes the byte[] to the stream and appends the terminator.
      Throws:
      java.io.IOException