Package org.apache.derby.client.net
Class Utf8CcsidManager
- java.lang.Object
-
- org.apache.derby.client.net.CcsidManager
-
- org.apache.derby.client.net.Utf8CcsidManager
-
public class Utf8CcsidManager extends CcsidManager
-
-
Field Summary
Fields Modifier and Type Field Description private java.nio.charset.CharsetEncoderencoderprivate static java.lang.StringUTF8private static java.nio.charset.CharsetUTF8_CHARSET-
Fields inherited from class org.apache.derby.client.net.CcsidManager
dot_, numToCharRepresentation_, numToSnaRequiredCrrtknChar_, space_, UTF8_CCSID
-
-
Constructor Summary
Constructors Constructor Description Utf8CcsidManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]convertFromJavaString(java.lang.String sourceString, Agent agent)java.lang.StringconvertToJavaString(byte[] sourceBytes, int offset, int numToConvert)Offset and numToConvert are given in terms of bytes!booleanencode(java.nio.CharBuffer src, java.nio.ByteBuffer dest, Agent agent)Encode the contents of aCharBufferinto aByteBuffer.voidstartEncoding()Initialize this instance for encoding a new string.
-
-
-
Field Detail
-
UTF8
private static final java.lang.String UTF8
- See Also:
- Constant Field Values
-
UTF8_CHARSET
private static final java.nio.charset.Charset UTF8_CHARSET
-
encoder
private final java.nio.charset.CharsetEncoder encoder
-
-
Method Detail
-
convertFromJavaString
public byte[] convertFromJavaString(java.lang.String sourceString, Agent agent) throws SqlException- Specified by:
convertFromJavaStringin classCcsidManager- Throws:
SqlException
-
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:
convertToJavaStringin classCcsidManager
-
startEncoding
public void startEncoding()
Description copied from class:CcsidManagerInitialize this instance for encoding a new string. This method resets any internal state that may be left after earlier calls toCcsidManager.encode(java.nio.CharBuffer, java.nio.ByteBuffer, org.apache.derby.client.am.Agent)on this instance. For example, it may reset the internaljava.nio.charset.CharsetEncoder, if the implementation uses one to do the encoding.- Specified by:
startEncodingin classCcsidManager
-
encode
public boolean encode(java.nio.CharBuffer src, java.nio.ByteBuffer dest, Agent agent) throws SqlExceptionDescription copied from class:CcsidManagerEncode the contents of aCharBufferinto aByteBuffer. The method will returntrueif 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 returnfalse. 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:
encodein classCcsidManager- Parameters:
src- buffer holding the characters to encodedest- buffer receiving the encoded bytesagent- where to report errors- Returns:
trueif all characters were encoded,falseif 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
-
-