Class ClobCodec

  • All Implemented Interfaces:
    Codec<java.sql.Clob>

    public class ClobCodec
    extends java.lang.Object
    implements Codec<java.sql.Clob>
    Clob codec
    • Field Detail

      • INSTANCE

        public static final ClobCodec INSTANCE
        Default instance
      • COMPATIBLE_TYPES

        private static final java.util.EnumSet<DataType> COMPATIBLE_TYPES
    • Constructor Detail

      • ClobCodec

        public ClobCodec()
    • Method Detail

      • className

        public java.lang.String className()
        Description copied from interface: Codec
        Codec native type
        Specified by:
        className in interface Codec<java.sql.Clob>
        Returns:
        code native return type
      • canDecode

        public boolean canDecode​(ColumnDecoder column,
                                 java.lang.Class<?> type)
        Description copied from interface: Codec
        If codec can decode this a server datatype to a java class type
        Specified by:
        canDecode in interface Codec<java.sql.Clob>
        Parameters:
        column - server datatype
        type - java return class
        Returns:
        true if codec can decode it
      • canEncode

        public boolean canEncode​(java.lang.Object value)
        Description copied from interface: Codec
        Can Codec encode the java object type
        Specified by:
        canEncode in interface Codec<java.sql.Clob>
        Parameters:
        value - java object type
        Returns:
        true if codec can encode java type
      • decodeText

        public java.sql.Clob decodeText​(ReadableByteBuf buf,
                                        MutableInt length,
                                        ColumnDecoder column,
                                        java.util.Calendar cal,
                                        Context context)
                                 throws java.sql.SQLDataException
        Description copied from interface: Codec
        Decode from a mysql packet text encoded a value to codec java type
        Specified by:
        decodeText in interface Codec<java.sql.Clob>
        Parameters:
        buf - mysql packet buffer
        length - encoded value length
        column - server column metadata
        cal - calendar
        context - connection context
        Returns:
        decoded value
        Throws:
        java.sql.SQLDataException - if unexpected error occurs during decoding
      • decodeBinary

        public java.sql.Clob decodeBinary​(ReadableByteBuf buf,
                                          MutableInt length,
                                          ColumnDecoder column,
                                          java.util.Calendar cal,
                                          Context context)
                                   throws java.sql.SQLDataException
        Description copied from interface: Codec
        Decode from a mysql packet binary encoded a value to codec java type
        Specified by:
        decodeBinary in interface Codec<java.sql.Clob>
        Parameters:
        buf - mysql packet buffer
        length - encoded value length
        column - server column metadata
        cal - calendar
        context - connection context
        Returns:
        decoded value
        Throws:
        java.sql.SQLDataException - if unexpected error occurs during decoding
      • encodeText

        public void encodeText​(Writer encoder,
                               Context context,
                               java.lang.Object value,
                               java.util.Calendar cal,
                               java.lang.Long maxLength)
                        throws java.io.IOException,
                               java.sql.SQLException
        Description copied from interface: Codec
        Text encode value to writer
        Specified by:
        encodeText in interface Codec<java.sql.Clob>
        Parameters:
        encoder - writer
        context - connection context
        value - value to encode
        cal - calendar
        maxLength - maximum value length
        Throws:
        java.io.IOException - if any socket error occurs
        java.sql.SQLException - if encoding error occurs
      • encodeBinary

        public void encodeBinary​(Writer encoder,
                                 Context context,
                                 java.lang.Object value,
                                 java.util.Calendar cal,
                                 java.lang.Long maxLength)
                          throws java.io.IOException,
                                 java.sql.SQLException
        Description copied from interface: Codec
        Binary encode value to writer
        Specified by:
        encodeBinary in interface Codec<java.sql.Clob>
        Parameters:
        encoder - writer
        context - connection context
        value - value to encode
        cal - calendar
        maxLength - maximum value length
        Throws:
        java.io.IOException - if any socket error occurs
        java.sql.SQLException - if encoding error occurs
      • encodeLongData

        public void encodeLongData​(Writer encoder,
                                   java.sql.Clob value,
                                   java.lang.Long maxLength)
                            throws java.io.IOException,
                                   java.sql.SQLException
        Description copied from interface: Codec
        binary encoding value to a long data packet
        Specified by:
        encodeLongData in interface Codec<java.sql.Clob>
        Parameters:
        encoder - writer
        value - value to encode
        maxLength - maximum length value
        Throws:
        java.io.IOException - if any socket error occurs
        java.sql.SQLException - if encoding error occurs
      • encodeData

        public byte[] encodeData​(java.sql.Clob value,
                                 java.lang.Long maxLength)
                          throws java.io.IOException,
                                 java.sql.SQLException
        Description copied from interface: Codec
        binary encoding value to a byte[]
        Specified by:
        encodeData in interface Codec<java.sql.Clob>
        Parameters:
        value - value to encode
        maxLength - maximum length value
        Returns:
        encoded value
        Throws:
        java.io.IOException - if any socket error occurs
        java.sql.SQLException - if encoding error occurs
      • canEncodeLongData

        public boolean canEncodeLongData()
        Description copied from interface: Codec
        Indicate if can encode long data
        Specified by:
        canEncodeLongData in interface Codec<java.sql.Clob>
        Returns:
        true if possible
      • getBinaryEncodeType

        public int getBinaryEncodeType()
        Description copied from interface: Codec
        Return server encoding data type
        Specified by:
        getBinaryEncodeType in interface Codec<java.sql.Clob>
        Returns:
        server encoding data type