Class AmexDecoder<M extends AmexMessage>

java.lang.Object
cl.netswitch.iso.amex8583.AmexDecoder<M>
Type Parameters:
M - the type of the AMEX message.

public class AmexDecoder<M extends AmexMessage> extends Object
Decodes a sequence of bytes into the fields of an AmexMessage.
  • Constructor Details

    • AmexDecoder

      public AmexDecoder(AmexFields<M> fields)
      Constructs a new AmexDecoder instance.
      Parameters:
      fields - the fields that describe a message.
      Throws:
      NullPointerException - if fields is null.
      AmexException - if required fields are not defined.
  • Method Details

    • decode

      public final void decode(byte[] bytes, M message)
      Decodes a sequence of bytes into the fields of a message.
      Parameters:
      bytes - the bytes to be decoded into message.
      message - the message where decoded fields are stored.
      Throws:
      NullPointerException - if an argument is null.
      AmexException - if an unexpected decoder error occurs.
    • preDecode

      protected void preDecode(ByteBuffer buffer, M message)
      Called before a message is decoded from the supplied byte buffer.
      Parameters:
      buffer - the buffer containing the bytes to be decoded.
      message - the message where decoded fields are stored.
      Throws:
      NullPointerException - if an argument is null.
      AmexException - if an expected decoder error occurs.
    • postDecode

      protected void postDecode(ByteBuffer buffer, M message)
      Called after a message is decoded from the supplied byte buffer.
      Parameters:
      buffer - the buffer containing the bytes to be decoded.
      message - the message where decoded fields are stored.
      Throws:
      NullPointerException - if an argument is null.
      AmexException - if an expected decoder error occurs.