Class CcsidManager

java.lang.Object
org.apache.derby.impl.drda.CcsidManager
Direct Known Subclasses:
EbcdicCcsidManager, Utf8CcsidManager

abstract class CcsidManager extends Object
  • Field Details

    • space

      byte space
    • dot

      byte dot
    • numToCharRepresentation

      byte[] numToCharRepresentation
    • UTF8_CCSID

      public static final int UTF8_CCSID
      See Also:
  • Constructor Details

    • CcsidManager

      CcsidManager(byte space, byte dot, byte[] numToCharRepresentation)
  • Method Details

    • getByteLength

      abstract int getByteLength(String str)
      Returns the length in bytes for the String str using a particular ccsid.
      Parameters:
      str - The Java String from which to obtain the length.
      Returns:
      The length in bytes of the String str.
    • convertFromJavaString

      abstract byte[] convertFromJavaString(String sourceString)
    • convertFromJavaString

      abstract void convertFromJavaString(String sourceString, ByteBuffer buffer)
      Convert a Java String into bytes for a particular ccsid. The String is converted into a buffer provided by the caller.
      Parameters:
      sourceString - A Java String to convert.
      buffer - The buffer to convert the String into.
    • convertToJavaString

      abstract String convertToJavaString(byte[] sourceBytes)
    • convertToJavaString

      abstract String convertToJavaString(byte[] sourceBytes, int offset, int numToConvert)
      Convert a byte array representing characters in a particular ccsid into a Java String. Mind the fact that for certain encodings (e.g. UTF8), the offset and numToConvert actually represent characters and 1 character does not always equal to 1 byte.
      Parameters:
      sourceBytes - An array of bytes to be converted.
      offset - An offset indicating first byte to convert.
      numToConvert - The number of bytes to be converted.
      Returns:
      A new Java String Object created after conversion.