Class StringCodec

java.lang.Object
org.mariadb.jdbc.plugin.codec.StringCodec
All Implemented Interfaces:
Codec<String>

public class StringCodec extends Object implements Codec<String>
String codec
  • Field Details

    • INSTANCE

      public static final StringCodec INSTANCE
      default instance
  • Constructor Details

    • StringCodec

      public StringCodec()
  • Method Details

    • className

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

      public boolean canDecode(org.mariadb.jdbc.client.ColumnDecoder column, 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<String>
      Parameters:
      column - server datatype
      type - java return class
      Returns:
      true if codec can decode it
    • canEncode

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

      public String decodeText(org.mariadb.jdbc.client.ReadableByteBuf buf, MutableInt length, org.mariadb.jdbc.client.ColumnDecoder column, Calendar cal, org.mariadb.jdbc.client.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 interface Codec<String>
      Parameters:
      buf - mysql packet buffer
      length - encoded value length
      column - server column metadata
      cal - calendar
      context - connection context
      Returns:
      decoded value
      Throws:
      SQLDataException - if unexpected error occurs during decoding
    • decodeBinary

      public String decodeBinary(org.mariadb.jdbc.client.ReadableByteBuf buf, MutableInt length, org.mariadb.jdbc.client.ColumnDecoder column, Calendar cal, org.mariadb.jdbc.client.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 interface Codec<String>
      Parameters:
      buf - mysql packet buffer
      length - encoded value length
      column - server column metadata
      cal - calendar
      context - connection context
      Returns:
      decoded value
      Throws:
      SQLDataException - if unexpected error occurs during decoding
    • encodeText

      public void encodeText(Writer encoder, org.mariadb.jdbc.client.Context context, Object value, Calendar cal, Long maxLen) throws IOException
      Description copied from interface: Codec
      Text encode value to writer
      Specified by:
      encodeText in interface Codec<String>
      Parameters:
      encoder - writer
      context - connection context
      value - value to encode
      cal - calendar
      maxLen - maximum value length
      Throws:
      IOException - if any socket error occurs
    • encodeBinary

      public void encodeBinary(Writer writer, org.mariadb.jdbc.client.Context context, Object value, Calendar cal, Long maxLength) throws IOException
      Description copied from interface: Codec
      Binary encode value to writer
      Specified by:
      encodeBinary in interface Codec<String>
      Parameters:
      writer - writer
      context - connection context
      value - value to encode
      cal - calendar
      maxLength - maximum value length
      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 interface Codec<String>
      Returns:
      server encoding data type