Class BlobCodec

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

    public class BlobCodec
    extends java.lang.Object
    implements Codec<java.sql.Blob>
    • Field Detail

      • INSTANCE

        public static final BlobCodec INSTANCE
      • COMPATIBLE_TYPES

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

      • BlobCodec

        public BlobCodec()
    • Method Detail

      • className

        public java.lang.String className()
        Specified by:
        className in interface Codec<java.sql.Blob>
      • canEncode

        public boolean canEncode​(java.lang.Object value)
        Specified by:
        canEncode in interface Codec<java.sql.Blob>
      • decodeText

        public java.sql.Blob decodeText​(ReadableByteBuf buf,
                                        int length,
                                        ColumnDefinitionPacket column,
                                        java.util.Calendar cal)
                                 throws java.sql.SQLDataException
        Specified by:
        decodeText in interface Codec<java.sql.Blob>
        Throws:
        java.sql.SQLDataException
      • decodeBinary

        public java.sql.Blob decodeBinary​(ReadableByteBuf buf,
                                          int length,
                                          ColumnDefinitionPacket column,
                                          java.util.Calendar cal)
                                   throws java.sql.SQLDataException
        Specified by:
        decodeBinary in interface Codec<java.sql.Blob>
        Throws:
        java.sql.SQLDataException
      • encodeText

        public void encodeText​(PacketWriter encoder,
                               Context context,
                               java.lang.Object value,
                               java.util.Calendar cal,
                               java.lang.Long maxLength)
                        throws java.io.IOException,
                               java.sql.SQLException
        Specified by:
        encodeText in interface Codec<java.sql.Blob>
        Throws:
        java.io.IOException
        java.sql.SQLException
      • encodeBinary

        public void encodeBinary​(PacketWriter encoder,
                                 java.lang.Object value,
                                 java.util.Calendar cal,
                                 java.lang.Long maxLength)
                          throws java.io.IOException,
                                 java.sql.SQLException
        Specified by:
        encodeBinary in interface Codec<java.sql.Blob>
        Throws:
        java.io.IOException
        java.sql.SQLException
      • encodeLongData

        public void encodeLongData​(PacketWriter encoder,
                                   java.sql.Blob value,
                                   java.lang.Long maxLength)
                            throws java.io.IOException,
                                   java.sql.SQLException
        Specified by:
        encodeLongData in interface Codec<java.sql.Blob>
        Throws:
        java.io.IOException
        java.sql.SQLException
      • encodeData

        public byte[] encodeData​(java.sql.Blob value,
                                 java.lang.Long maxLength)
                          throws java.io.IOException,
                                 java.sql.SQLException
        Specified by:
        encodeData in interface Codec<java.sql.Blob>
        Throws:
        java.io.IOException
        java.sql.SQLException
      • encode

        private byte[] encode​(java.io.InputStream is,
                              java.lang.Long maxLength)
                       throws java.io.IOException
        Throws:
        java.io.IOException
      • getBinaryEncodeType

        public int getBinaryEncodeType()
        Specified by:
        getBinaryEncodeType in interface Codec<java.sql.Blob>
      • canEncodeLongData

        public boolean canEncodeLongData()
        Specified by:
        canEncodeLongData in interface Codec<java.sql.Blob>