Class Utf8CcsidManager

    • Field Detail

      • UTF8_CHARSET

        private static final java.nio.charset.Charset UTF8_CHARSET
      • encoder

        private final java.nio.charset.CharsetEncoder encoder
    • Constructor Detail

      • Utf8CcsidManager

        public Utf8CcsidManager()
    • Method Detail

      • convertToJavaString

        public java.lang.String convertToJavaString​(byte[] sourceBytes,
                                                    int offset,
                                                    int numToConvert)
        Offset and numToConvert are given in terms of bytes! Not characters!
        Specified by:
        convertToJavaString in class CcsidManager
      • encode

        public boolean encode​(java.nio.CharBuffer src,
                              java.nio.ByteBuffer dest,
                              Agent agent)
                       throws SqlException
        Description copied from class: CcsidManager
        Encode the contents of a CharBuffer into a ByteBuffer. The method will return true if all the characters were encoded and copied to the destination. If the receiving byte buffer is too small to hold the entire encoded representation of the character buffer, the method will return false. The caller should then allocate a larger byte buffer, copy the contents from the old byte buffer to the new one, and then call this method again to get the remaining characters encoded.
        Specified by:
        encode in class CcsidManager
        Parameters:
        src - buffer holding the characters to encode
        dest - buffer receiving the encoded bytes
        agent - where to report errors
        Returns:
        true if all characters were encoded, false if the destination buffer is full and there still are more characters to encode
        Throws:
        SqlException - if the characters cannot be encoded using this CCSID manager's character encoding