package me.xcoding.opencdc.mysql.protocol.column;

public interface MetaDataParser {
	public static final int MYSQL_TYPE_DECIMAL	 	= 0x00;
	public static final int MYSQL_TYPE_TINY			= 0x01;
	public static final int MYSQL_TYPE_SHORT		= 0x02;
	public static final int MYSQL_TYPE_LONG			= 0x03;
	public static final int MYSQL_TYPE_FLOAT		= 0x04;
	public static final int MYSQL_TYPE_DOUBLE		= 0x05;
	public static final int MYSQL_TYPE_NULL		 	= 0x06;
	public static final int MYSQL_TYPE_TIMESTAMP	= 0x07;
	public static final int MYSQL_TYPE_LONGLONG	 	= 0x08;
	public static final int MYSQL_TYPE_INT24		= 0x09;
	public static final int MYSQL_TYPE_DATE		 	= 0x0A;
	public static final int MYSQL_TYPE_TIME		 	= 0x0B;
	public static final int MYSQL_TYPE_DATETIME		= 0x0C;
	public static final int MYSQL_TYPE_YEAR		 	= 0x0D;
	public static final int MYSQL_TYPE_NEWDATE	 	= 0x0E;
	public static final int MYSQL_TYPE_VARCHAR	 	= 0x0F;
	public static final int MYSQL_TYPE_BIT		 	= 0x10;
	public static final int MYSQL_TYPE_TIMESTAMP2	= 0x11;
	public static final int MYSQL_TYPE_DATETIME2	= 0x12;
	public static final int MYSQL_TYPE_TIME2		= 0x13;
	                                                       
	public static final int MYSQL_TYPE_NEWDECIMAL	= 0x16;
	public static final int MYSQL_TYPE_ENUM			= 0x17;
	public static final int MYSQL_TYPE_SET			= 0x18;
	public static final int MYSQL_TYPE_TINY_BLOB	= 0x19;
	public static final int MYSQL_TYPE_MEDIUM_BLOB	= 0x1A;
	public static final int MYSQL_TYPE_LONG_BLOB	= 0x1B;
	public static final int MYSQL_TYPE_BLOB			= 0x1C;
	public static final int MYSQL_TYPE_VAR_STRING	= 0x1D;
	public static final int MYSQL_TYPE_STRING		= 0x1E;
	public static final int MYSQL_TYPE_GEOMETRY		= 0x1F;
	
	public static final int lengthOf[] = new int[]{
		0X02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
		0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 
		0x00, 0x00, 0x01, 0x02, 0x02, 0x00
	};
}


@@ -57,17 +57,22 @@
 lic 
-interface
+abstract class
  Met
@@ -1810,12 +1810,932 @@
 int%5B
-%5D%7B%0D%0A
+0x20%5D;%0D%0A%0D%0A%09static %7B%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_FLOAT%5D       = 1;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_DOUBLE%5D      = 1;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_TINY_BLOB%5D   = 1;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_BLOB%5D        = 1;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_MEDIUM_BLOB%5D = 1;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_LONG_BLOB%5D   = 1;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_TIME2%5D       = 1;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_DATETIME2%5D   = 1;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_TIMESTAMP2%5D  = 1;%0D%0A%09%09                                                %0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_BIT%5D         = 2;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_VARCHAR%5D     = 2;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_NEWDECIMAL%5D%09= 2;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_SET%5D         = 2;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_ENUM%5D        = 2;%0D%0A%09%09lengthOf%5BMetaDataParser.MYSQL_TYPE_STRING%5D      = 2;%0D%0A%09%7D%0D%0A//%09%7B%0D%0A//
 %09%090X
@@ -2798,32 +2798,34 @@
 , 0x00, 0x00, %0D%0A
+//
 %09%090x00, 0x00, 0x
@@ -2884,16 +2884,18 @@
 0x00, %0D%0A
+//
 %09%090x00, 
@@ -2924,16 +2924,18 @@
 , 0x00%0D%0A
+//
 %09%7D;%0D%0A%7D%0D%0A

fix some columns metadata parser fault