Loading sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/dialect/mysql/sql/MySQLDescribeParser.java +2 −2 Original line number Diff line number Diff line Loading @@ -3,7 +3,7 @@ package io.shardingjdbc.core.parsing.parser.dialect.mysql.sql; import io.shardingjdbc.core.parsing.lexer.LexerEngine; import io.shardingjdbc.core.parsing.parser.clause.TableReferencesClauseParser; import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.DescribeStatement; import io.shardingjdbc.core.parsing.parser.sql.SQLParser; import io.shardingjdbc.core.parsing.parser.sql.dal.describe.AbstractDescribeParser; import io.shardingjdbc.core.rule.ShardingRule; /** Loading @@ -11,7 +11,7 @@ import io.shardingjdbc.core.rule.ShardingRule; * * @author zhangliang */ public final class MySQLDescribeParser implements SQLParser { public final class MySQLDescribeParser extends AbstractDescribeParser { private final LexerEngine lexerEngine; Loading sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/dialect/mysql/sql/MySQLShowParser.java +2 −2 Original line number Diff line number Diff line Loading @@ -8,8 +8,8 @@ import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.ShowColumnsSt import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.ShowDatabasesStatement; import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.ShowOtherStatement; import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.ShowTablesStatement; import io.shardingjdbc.core.parsing.parser.sql.SQLParser; import io.shardingjdbc.core.parsing.parser.sql.dal.DALStatement; import io.shardingjdbc.core.parsing.parser.sql.dal.show.AbstractShowParser; import io.shardingjdbc.core.parsing.parser.token.SchemaToken; import io.shardingjdbc.core.rule.ShardingRule; import lombok.RequiredArgsConstructor; Loading @@ -20,7 +20,7 @@ import lombok.RequiredArgsConstructor; * @author zhangliang */ @RequiredArgsConstructor public final class MySQLShowParser implements SQLParser { public final class MySQLShowParser extends AbstractShowParser { private final LexerEngine lexerEngine; Loading sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/dialect/mysql/sql/MySQLUseParser.java +3 −4 Original line number Diff line number Diff line package io.shardingjdbc.core.parsing.parser.dialect.mysql.sql; import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.UseStatement; import io.shardingjdbc.core.parsing.parser.sql.SQLParser; import io.shardingjdbc.core.parsing.parser.sql.dal.DALStatement; import io.shardingjdbc.core.parsing.parser.sql.dal.use.AbstractUseParser; /** * Use parser for MySQL. * * @author zhangliang */ public final class MySQLUseParser implements SQLParser { public final class MySQLUseParser extends AbstractUseParser { @Override public DALStatement parse() { public UseStatement parse() { return new UseStatement(); } } sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/sql/SQLParserFactory.java +8 −8 Original line number Diff line number Diff line Loading @@ -23,10 +23,10 @@ import io.shardingjdbc.core.parsing.lexer.dialect.mysql.MySQLKeyword; import io.shardingjdbc.core.parsing.lexer.token.DefaultKeyword; import io.shardingjdbc.core.parsing.lexer.token.Keyword; import io.shardingjdbc.core.parsing.lexer.token.TokenType; import io.shardingjdbc.core.parsing.parser.dialect.mysql.sql.MySQLDescribeParser; import io.shardingjdbc.core.parsing.parser.dialect.mysql.sql.MySQLShowParser; import io.shardingjdbc.core.parsing.parser.dialect.mysql.sql.MySQLUseParser; import io.shardingjdbc.core.parsing.parser.exception.SQLParsingUnsupportedException; import io.shardingjdbc.core.parsing.parser.sql.dal.describe.DescribeParserFactory; import io.shardingjdbc.core.parsing.parser.sql.dal.show.ShowParserFactory; import io.shardingjdbc.core.parsing.parser.sql.dal.use.UseParserFactory; import io.shardingjdbc.core.parsing.parser.sql.ddl.alter.AlterParserFactory; import io.shardingjdbc.core.parsing.parser.sql.ddl.create.CreateParserFactory; import io.shardingjdbc.core.parsing.parser.sql.ddl.drop.DropParserFactory; Loading Loading @@ -71,7 +71,7 @@ public final class SQLParserFactory { return getTCLParser(dbType, shardingRule, lexerEngine); } if (isDAL(tokenType)) { return getDALParser((Keyword) tokenType, shardingRule, lexerEngine); return getDALParser(dbType, (Keyword) tokenType, shardingRule, lexerEngine); } throw new SQLParsingUnsupportedException(tokenType); } Loading Loading @@ -133,15 +133,15 @@ public final class SQLParserFactory { return TCLParserFactory.newInstance(dbType, shardingRule, lexerEngine); } private static SQLParser getDALParser(final Keyword tokenType, final ShardingRule shardingRule, final LexerEngine lexerEngine) { private static SQLParser getDALParser(final DatabaseType dbType, final Keyword tokenType, final ShardingRule shardingRule, final LexerEngine lexerEngine) { if (DefaultKeyword.USE == tokenType) { return new MySQLUseParser(); return UseParserFactory.newInstance(dbType, shardingRule, lexerEngine); } if (DefaultKeyword.DESC == tokenType || MySQLKeyword.DESCRIBE == tokenType) { return new MySQLDescribeParser(shardingRule, lexerEngine); return DescribeParserFactory.newInstance(dbType, shardingRule, lexerEngine); } if (MySQLKeyword.SHOW == tokenType) { return new MySQLShowParser(shardingRule, lexerEngine); return ShowParserFactory.newInstance(dbType, shardingRule, lexerEngine); } throw new SQLParsingUnsupportedException(tokenType); } Loading sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/sql/dal/AbstractDALParser.java 0 → 100644 +11 −0 Original line number Diff line number Diff line package io.shardingjdbc.core.parsing.parser.sql.dal; import io.shardingjdbc.core.parsing.parser.sql.SQLParser; /** * Database administrator parser. * * @author zhangliang */ public abstract class AbstractDALParser implements SQLParser { } Loading
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/dialect/mysql/sql/MySQLDescribeParser.java +2 −2 Original line number Diff line number Diff line Loading @@ -3,7 +3,7 @@ package io.shardingjdbc.core.parsing.parser.dialect.mysql.sql; import io.shardingjdbc.core.parsing.lexer.LexerEngine; import io.shardingjdbc.core.parsing.parser.clause.TableReferencesClauseParser; import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.DescribeStatement; import io.shardingjdbc.core.parsing.parser.sql.SQLParser; import io.shardingjdbc.core.parsing.parser.sql.dal.describe.AbstractDescribeParser; import io.shardingjdbc.core.rule.ShardingRule; /** Loading @@ -11,7 +11,7 @@ import io.shardingjdbc.core.rule.ShardingRule; * * @author zhangliang */ public final class MySQLDescribeParser implements SQLParser { public final class MySQLDescribeParser extends AbstractDescribeParser { private final LexerEngine lexerEngine; Loading
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/dialect/mysql/sql/MySQLShowParser.java +2 −2 Original line number Diff line number Diff line Loading @@ -8,8 +8,8 @@ import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.ShowColumnsSt import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.ShowDatabasesStatement; import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.ShowOtherStatement; import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.ShowTablesStatement; import io.shardingjdbc.core.parsing.parser.sql.SQLParser; import io.shardingjdbc.core.parsing.parser.sql.dal.DALStatement; import io.shardingjdbc.core.parsing.parser.sql.dal.show.AbstractShowParser; import io.shardingjdbc.core.parsing.parser.token.SchemaToken; import io.shardingjdbc.core.rule.ShardingRule; import lombok.RequiredArgsConstructor; Loading @@ -20,7 +20,7 @@ import lombok.RequiredArgsConstructor; * @author zhangliang */ @RequiredArgsConstructor public final class MySQLShowParser implements SQLParser { public final class MySQLShowParser extends AbstractShowParser { private final LexerEngine lexerEngine; Loading
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/dialect/mysql/sql/MySQLUseParser.java +3 −4 Original line number Diff line number Diff line package io.shardingjdbc.core.parsing.parser.dialect.mysql.sql; import io.shardingjdbc.core.parsing.parser.dialect.mysql.statement.UseStatement; import io.shardingjdbc.core.parsing.parser.sql.SQLParser; import io.shardingjdbc.core.parsing.parser.sql.dal.DALStatement; import io.shardingjdbc.core.parsing.parser.sql.dal.use.AbstractUseParser; /** * Use parser for MySQL. * * @author zhangliang */ public final class MySQLUseParser implements SQLParser { public final class MySQLUseParser extends AbstractUseParser { @Override public DALStatement parse() { public UseStatement parse() { return new UseStatement(); } }
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/sql/SQLParserFactory.java +8 −8 Original line number Diff line number Diff line Loading @@ -23,10 +23,10 @@ import io.shardingjdbc.core.parsing.lexer.dialect.mysql.MySQLKeyword; import io.shardingjdbc.core.parsing.lexer.token.DefaultKeyword; import io.shardingjdbc.core.parsing.lexer.token.Keyword; import io.shardingjdbc.core.parsing.lexer.token.TokenType; import io.shardingjdbc.core.parsing.parser.dialect.mysql.sql.MySQLDescribeParser; import io.shardingjdbc.core.parsing.parser.dialect.mysql.sql.MySQLShowParser; import io.shardingjdbc.core.parsing.parser.dialect.mysql.sql.MySQLUseParser; import io.shardingjdbc.core.parsing.parser.exception.SQLParsingUnsupportedException; import io.shardingjdbc.core.parsing.parser.sql.dal.describe.DescribeParserFactory; import io.shardingjdbc.core.parsing.parser.sql.dal.show.ShowParserFactory; import io.shardingjdbc.core.parsing.parser.sql.dal.use.UseParserFactory; import io.shardingjdbc.core.parsing.parser.sql.ddl.alter.AlterParserFactory; import io.shardingjdbc.core.parsing.parser.sql.ddl.create.CreateParserFactory; import io.shardingjdbc.core.parsing.parser.sql.ddl.drop.DropParserFactory; Loading Loading @@ -71,7 +71,7 @@ public final class SQLParserFactory { return getTCLParser(dbType, shardingRule, lexerEngine); } if (isDAL(tokenType)) { return getDALParser((Keyword) tokenType, shardingRule, lexerEngine); return getDALParser(dbType, (Keyword) tokenType, shardingRule, lexerEngine); } throw new SQLParsingUnsupportedException(tokenType); } Loading Loading @@ -133,15 +133,15 @@ public final class SQLParserFactory { return TCLParserFactory.newInstance(dbType, shardingRule, lexerEngine); } private static SQLParser getDALParser(final Keyword tokenType, final ShardingRule shardingRule, final LexerEngine lexerEngine) { private static SQLParser getDALParser(final DatabaseType dbType, final Keyword tokenType, final ShardingRule shardingRule, final LexerEngine lexerEngine) { if (DefaultKeyword.USE == tokenType) { return new MySQLUseParser(); return UseParserFactory.newInstance(dbType, shardingRule, lexerEngine); } if (DefaultKeyword.DESC == tokenType || MySQLKeyword.DESCRIBE == tokenType) { return new MySQLDescribeParser(shardingRule, lexerEngine); return DescribeParserFactory.newInstance(dbType, shardingRule, lexerEngine); } if (MySQLKeyword.SHOW == tokenType) { return new MySQLShowParser(shardingRule, lexerEngine); return ShowParserFactory.newInstance(dbType, shardingRule, lexerEngine); } throw new SQLParsingUnsupportedException(tokenType); } Loading
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/parsing/parser/sql/dal/AbstractDALParser.java 0 → 100644 +11 −0 Original line number Diff line number Diff line package io.shardingjdbc.core.parsing.parser.sql.dal; import io.shardingjdbc.core.parsing.parser.sql.SQLParser; /** * Database administrator parser. * * @author zhangliang */ public abstract class AbstractDALParser implements SQLParser { }