Class LocalDateTimeCodec

    • Field Detail

      • TIMESTAMP_FORMAT

        public static final DateTimeFormatter TIMESTAMP_FORMAT
        timestamp with fractional part formatter
      • TIMESTAMP_FORMAT_NO_FRACTIONAL

        public static final DateTimeFormatter TIMESTAMP_FORMAT_NO_FRACTIONAL
        timestamp without fractional part formatter
      • MARIADB_LOCAL_DATE_TIME

        public static final DateTimeFormatter MARIADB_LOCAL_DATE_TIME
        formatter
    • Constructor Detail

      • LocalDateTimeCodec

        public LocalDateTimeCodec()
    • Method Detail

      • parseTimestamp

        public static int[] parseTimestamp​(String raw)
                                    throws DateTimeException
        Parse timestamp to date/month/year int array
        Parameters:
        raw - string data
        Returns:
        date/month/year int array
        Throws:
        DateTimeException - if wrong format
      • className

        public String className()
        Description copied from interface: Codec
        Codec native type
        Specified by:
        className in interface Codec<LocalDateTime>
        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<LocalDateTime>
        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<LocalDateTime>
        Parameters:
        value - java object type
        Returns:
        true if codec can encode java type
      • decodeText

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

        public LocalDateTime decodeBinary​(org.mariadb.jdbc.client.ReadableByteBuf buf,
                                          MutableInt length,
                                          org.mariadb.jdbc.client.ColumnDecoder column,
                                          Calendar cal)
                                   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<LocalDateTime>
        Parameters:
        buf - mysql packet buffer
        length - encoded value length
        column - server column metadata
        cal - calendar
        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<LocalDateTime>
        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 encoder,
                                 Object value,
                                 Calendar cal,
                                 Long maxLength)
                          throws IOException
        Description copied from interface: Codec
        Binary encode value to writer
        Specified by:
        encodeBinary in interface Codec<LocalDateTime>
        Parameters:
        encoder - writer
        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<LocalDateTime>
        Returns:
        server encoding data type