Class CompositeCodec

java.lang.Object
org.springframework.integration.codec.CompositeCodec
All Implemented Interfaces:
Codec

public class CompositeCodec extends Object implements Codec
A Codec that can delegate to one out of many Codecs, each mapped to a class.
Since:
4.2
Author:
David Turanski
  • Constructor Details

    • CompositeCodec

      public CompositeCodec(Map<Class<?>,Codec> delegates, Codec defaultCodec)
    • CompositeCodec

      @Deprecated(since="6.4.6", forRemoval=true) public CompositeCodec(Codec defaultCodec)
      Deprecated, for removal: This API element is subject to removal in a future version.
      since 6.4.6 in favor of CompositeCodec(Map, Codec) with provided delegates.
      Parameters:
      defaultCodec - codec for fallback
  • Method Details

    • encode

      public void encode(Object object, OutputStream outputStream) throws IOException
      Description copied from interface: Codec
      Encode (encode) an object to an OutputStream.
      Specified by:
      encode in interface Codec
      Parameters:
      object - the object to encode
      outputStream - the OutputStream
      Throws:
      IOException - if the operation fails
    • encode

      public byte[] encode(Object object) throws IOException
      Description copied from interface: Codec
      Encode an object to a byte array.
      Specified by:
      encode in interface Codec
      Parameters:
      object - the object to encode
      Returns:
      the bytes
      Throws:
      IOException - if the operation fails
    • decode

      public <T> T decode(InputStream inputStream, Class<T> type) throws IOException
      Description copied from interface: Codec
      Decode an object of a given type.
      Specified by:
      decode in interface Codec
      Type Parameters:
      T - the object's type
      Parameters:
      inputStream - the input stream containing the encoded object
      type - the object's class
      Returns:
      the object
      Throws:
      IOException - if the operation fails
    • decode

      public <T> T decode(byte[] bytes, Class<T> type) throws IOException
      Description copied from interface: Codec
      Decode an object of a given type.
      Specified by:
      decode in interface Codec
      Type Parameters:
      T - the object's type
      Parameters:
      bytes - the byte array containing the encoded object
      type - the object's class
      Returns:
      the object
      Throws:
      IOException - if the operation fails