Package org.mariadb.jdbc.plugin.codec
Class StreamCodec
java.lang.Object
org.mariadb.jdbc.plugin.codec.StreamCodec
- All Implemented Interfaces:
Codec<InputStream>
InputStream codec
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
canDecode
(ColumnDecoder column, Class<?> type) If codec can decode this a server datatype to a java class typeboolean
Can Codec encode the java object typeboolean
Indicate if can encode long dataCodec native typedecodeBinary
(ReadableByteBuf buf, MutableInt length, ColumnDecoder column, Calendar cal, Context context) Decode from a mysql packet binary encoded a value to codec java typedecodeText
(ReadableByteBuf buf, MutableInt length, ColumnDecoder column, Calendar cal, Context context) Decode from a mysql packet text encoded a value to codec java typevoid
Binary encode value to writerbyte[]
encodeData
(InputStream value, Long maxLength) binary encoding value to a byte[]void
encodeLongData
(Writer encoder, InputStream value, Long maxLength) binary encoding value to a long data packetvoid
Text encode value to writerint
Return server encoding data type
-
Field Details
-
INSTANCE
default instance -
COMPATIBLE_TYPES
-
-
Constructor Details
-
StreamCodec
public StreamCodec()
-
-
Method Details
-
className
Description copied from interface:Codec
Codec native type- Specified by:
className
in interfaceCodec<InputStream>
- Returns:
- code native return type
-
canDecode
Description copied from interface:Codec
If codec can decode this a server datatype to a java class type- Specified by:
canDecode
in interfaceCodec<InputStream>
- Parameters:
column
- server datatypetype
- java return class- Returns:
- true if codec can decode it
-
decodeText
public InputStream decodeText(ReadableByteBuf buf, MutableInt length, ColumnDecoder column, Calendar cal, Context context) throws SQLDataException Description copied from interface:Codec
Decode from a mysql packet text encoded a value to codec java type- Specified by:
decodeText
in interfaceCodec<InputStream>
- Parameters:
buf
- mysql packet bufferlength
- encoded value lengthcolumn
- server column metadatacal
- calendarcontext
- connection context- Returns:
- decoded value
- Throws:
SQLDataException
- if unexpected error occurs during decoding
-
decodeBinary
public InputStream decodeBinary(ReadableByteBuf buf, MutableInt length, ColumnDecoder column, Calendar cal, Context context) throws SQLDataException Description copied from interface:Codec
Decode from a mysql packet binary encoded a value to codec java type- Specified by:
decodeBinary
in interfaceCodec<InputStream>
- Parameters:
buf
- mysql packet bufferlength
- encoded value lengthcolumn
- server column metadatacal
- calendarcontext
- connection context- Returns:
- decoded value
- Throws:
SQLDataException
- if unexpected error occurs during decoding
-
canEncode
Description copied from interface:Codec
Can Codec encode the java object type- Specified by:
canEncode
in interfaceCodec<InputStream>
- Parameters:
value
- java object type- Returns:
- true if codec can encode java type
-
encodeText
public void encodeText(Writer encoder, Context context, Object value, Calendar cal, Long maxLen) throws IOException Description copied from interface:Codec
Text encode value to writer- Specified by:
encodeText
in interfaceCodec<InputStream>
- Parameters:
encoder
- writercontext
- connection contextvalue
- value to encodecal
- calendarmaxLen
- maximum value length- Throws:
IOException
- if any socket error occurs
-
encodeBinary
public void encodeBinary(Writer encoder, Context context, Object value, Calendar cal, Long maxLength) throws IOException Description copied from interface:Codec
Binary encode value to writer- Specified by:
encodeBinary
in interfaceCodec<InputStream>
- Parameters:
encoder
- writercontext
- connection contextvalue
- value to encodecal
- calendarmaxLength
- maximum value length- Throws:
IOException
- if any socket error occurs
-
encodeLongData
Description copied from interface:Codec
binary encoding value to a long data packet- Specified by:
encodeLongData
in interfaceCodec<InputStream>
- Parameters:
encoder
- writervalue
- value to encodemaxLength
- maximum length value- Throws:
IOException
- if any socket error occurs
-
encodeData
Description copied from interface:Codec
binary encoding value to a byte[]- Specified by:
encodeData
in interfaceCodec<InputStream>
- Parameters:
value
- value to encodemaxLength
- maximum length value- Returns:
- encoded value
- Throws:
IOException
- if any socket error occurs
-
getBinaryEncodeType
public int getBinaryEncodeType()Description copied from interface:Codec
Return server encoding data type- Specified by:
getBinaryEncodeType
in interfaceCodec<InputStream>
- Returns:
- server encoding data type
-
canEncodeLongData
public boolean canEncodeLongData()Description copied from interface:Codec
Indicate if can encode long data- Specified by:
canEncodeLongData
in interfaceCodec<InputStream>
- Returns:
- true if possible
-