Class AsciiPrefixer

java.lang.Object
org.jpos.iso.AsciiPrefixer
All Implemented Interfaces:
Prefixer

public class AsciiPrefixer extends Object implements Prefixer
AsciiPrefixer constructs a prefix for ASCII messages.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final AsciiPrefixer
    A length prefixer for up to 9 chars.
    static final AsciiPrefixer
    A length prefixer for up to 99 chars.
    static final AsciiPrefixer
    A length prefixer for up to 999 chars.
    static final AsciiPrefixer
    A length prefixer for up to 9999 chars.
    static final AsciiPrefixer
    A length prefixer for up to 99999 chars.
    static final AsciiPrefixer
    A length prefixer for up to 999999 chars.
  • Constructor Summary

    Constructors
    Constructor
    Description
    AsciiPrefixer(int nDigits)
    Creates an AsciiPrefixer that uses the specified number of ASCII decimal digits for the length prefix.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    decodeLength(byte[] b, int offset)
    Decodes an encoded length from the byte array.
    void
    encodeLength(int length, byte[] b)
    Encodes the field length into the byte array.
    int
    Returns the number of bytes taken up by the length encoding.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • L

      public static final AsciiPrefixer L
      A length prefixer for up to 9 chars. The length is encoded with 1 ASCII char representing 1 decimal digit.
    • LL

      public static final AsciiPrefixer LL
      A length prefixer for up to 99 chars. The length is encoded with 2 ASCII chars representing 2 decimal digits.
    • LLL

      public static final AsciiPrefixer LLL
      A length prefixer for up to 999 chars. The length is encoded with 3 ASCII chars representing 3 decimal digits.
    • LLLL

      public static final AsciiPrefixer LLLL
      A length prefixer for up to 9999 chars. The length is encoded with 4 ASCII chars representing 4 decimal digits.
    • LLLLL

      public static final AsciiPrefixer LLLLL
      A length prefixer for up to 99999 chars. The length is encoded with 5 ASCII chars representing 5 decimal digits.
    • LLLLLL

      public static final AsciiPrefixer LLLLLL
      A length prefixer for up to 999999 chars. The length is encoded with 6 ASCII chars representing 6 decimal digits.
  • Constructor Details

    • AsciiPrefixer

      public AsciiPrefixer(int nDigits)
      Creates an AsciiPrefixer that uses the specified number of ASCII decimal digits for the length prefix.
      Parameters:
      nDigits - number of ASCII decimal digits in the length prefix
  • Method Details

    • encodeLength

      public void encodeLength(int length, byte[] b) throws ISOException
      Description copied from interface: Prefixer
      Encodes the field length into the byte array.
      Specified by:
      encodeLength in interface Prefixer
      Parameters:
      length - the field length to encode
      b - the byte array to write the length prefix into
      Throws:
      ISOException - if the length exceeds the prefix capacity
    • decodeLength

      public int decodeLength(byte[] b, int offset) throws ISOException
      Description copied from interface: Prefixer
      Decodes an encoded length from the byte array.
      Specified by:
      decodeLength in interface Prefixer
      Parameters:
      b - the byte array containing the length prefix
      offset - the offset in b where the prefix starts
      Returns:
      the length in chars of the field data to follow this prefix
      Throws:
      ISOException - if the prefix cannot be decoded
    • getPackedLength

      public int getPackedLength()
      Description copied from interface: Prefixer
      Returns the number of bytes taken up by the length encoding.
      Specified by:
      getPackedLength in interface Prefixer
      Returns:
      the number of bytes used by the length encoding