This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new 8b539e41b50 Refactor DAL StatementContexts (#35720)
8b539e41b50 is described below
commit 8b539e41b50148f30f5eb9f02862123fd0023976
Author: Liang Zhang <[email protected]>
AuthorDate: Sun Jun 15 22:09:41 2025 +0800
Refactor DAL StatementContexts (#35720)
---
.../type/dal/ShowColumnsStatementContext.java | 16 +++++++--------
.../type/dal/ShowIndexStatementContext.java | 16 +++++++--------
.../type/dal/ShowTableStatusStatementContext.java | 24 +++++++++++-----------
.../type/dal/ShowTablesStatementContext.java | 22 +++++++++-----------
4 files changed, 38 insertions(+), 40 deletions(-)
diff --git
a/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowColumnsStatementContext.java
b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowColumnsStatementContext.java
index 44a40027a27..54ddd287558 100644
---
a/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowColumnsStatementContext.java
+++
b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowColumnsStatementContext.java
@@ -19,7 +19,7 @@ package
org.apache.shardingsphere.infra.binder.context.statement.type.dal;
import lombok.Getter;
import
org.apache.shardingsphere.infra.binder.context.segment.table.TablesContext;
-import
org.apache.shardingsphere.infra.binder.context.statement.CommonSQLStatementContext;
+import
org.apache.shardingsphere.infra.binder.context.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.context.type.RemoveAvailable;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.sql.parser.statement.core.segment.SQLSegment;
@@ -32,20 +32,20 @@ import java.util.LinkedList;
* Show columns statement context.
*/
@Getter
-public final class ShowColumnsStatementContext extends
CommonSQLStatementContext implements RemoveAvailable {
+public final class ShowColumnsStatementContext implements SQLStatementContext,
RemoveAvailable {
+
+ private final DatabaseType databaseType;
+
+ private final ShowColumnsStatement sqlStatement;
private final TablesContext tablesContext;
public ShowColumnsStatementContext(final DatabaseType databaseType, final
ShowColumnsStatement sqlStatement) {
- super(databaseType, sqlStatement);
+ this.databaseType = databaseType;
+ this.sqlStatement = sqlStatement;
tablesContext = new TablesContext(sqlStatement.getTable());
}
- @Override
- public ShowColumnsStatement getSqlStatement() {
- return (ShowColumnsStatement) super.getSqlStatement();
- }
-
@Override
public Collection<SQLSegment> getRemoveSegments() {
Collection<SQLSegment> result = new LinkedList<>();
diff --git
a/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowIndexStatementContext.java
b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowIndexStatementContext.java
index 159718dfce9..7ed3fd2f0ef 100644
---
a/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowIndexStatementContext.java
+++
b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowIndexStatementContext.java
@@ -19,7 +19,7 @@ package
org.apache.shardingsphere.infra.binder.context.statement.type.dal;
import lombok.Getter;
import
org.apache.shardingsphere.infra.binder.context.segment.table.TablesContext;
-import
org.apache.shardingsphere.infra.binder.context.statement.CommonSQLStatementContext;
+import
org.apache.shardingsphere.infra.binder.context.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.context.type.RemoveAvailable;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.sql.parser.statement.core.segment.SQLSegment;
@@ -32,20 +32,20 @@ import java.util.LinkedList;
* Show index statement context.
*/
@Getter
-public final class ShowIndexStatementContext extends CommonSQLStatementContext
implements RemoveAvailable {
+public final class ShowIndexStatementContext implements SQLStatementContext,
RemoveAvailable {
+
+ private final DatabaseType databaseType;
+
+ private final ShowIndexStatement sqlStatement;
private final TablesContext tablesContext;
public ShowIndexStatementContext(final DatabaseType databaseType, final
ShowIndexStatement sqlStatement) {
- super(databaseType, sqlStatement);
+ this.databaseType = databaseType;
+ this.sqlStatement = sqlStatement;
tablesContext = new TablesContext(sqlStatement.getTable());
}
- @Override
- public ShowIndexStatement getSqlStatement() {
- return (ShowIndexStatement) super.getSqlStatement();
- }
-
@Override
public Collection<SQLSegment> getRemoveSegments() {
Collection<SQLSegment> result = new LinkedList<>();
diff --git
a/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowTableStatusStatementContext.java
b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowTableStatusStatementContext.java
index 25fa525b4b1..2c02b9e808f 100644
---
a/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowTableStatusStatementContext.java
+++
b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowTableStatusStatementContext.java
@@ -17,8 +17,9 @@
package org.apache.shardingsphere.infra.binder.context.statement.type.dal;
+import lombok.Getter;
import
org.apache.shardingsphere.infra.binder.context.segment.table.TablesContext;
-import
org.apache.shardingsphere.infra.binder.context.statement.CommonSQLStatementContext;
+import
org.apache.shardingsphere.infra.binder.context.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.context.type.RemoveAvailable;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.sql.parser.statement.core.segment.SQLSegment;
@@ -31,20 +32,19 @@ import java.util.LinkedList;
/**
* Show table status statement context.
*/
-public final class ShowTableStatusStatementContext extends
CommonSQLStatementContext implements RemoveAvailable {
+@Getter
+public final class ShowTableStatusStatementContext implements
SQLStatementContext, RemoveAvailable {
- public ShowTableStatusStatementContext(final DatabaseType databaseType,
final ShowTableStatusStatement sqlStatement) {
- super(databaseType, sqlStatement);
- }
+ private final DatabaseType databaseType;
- @Override
- public ShowTableStatusStatement getSqlStatement() {
- return (ShowTableStatusStatement) super.getSqlStatement();
- }
+ private final ShowTableStatusStatement sqlStatement;
- @Override
- public TablesContext getTablesContext() {
- return new TablesContext(Collections.emptyList());
+ private final TablesContext tablesContext;
+
+ public ShowTableStatusStatementContext(final DatabaseType databaseType,
final ShowTableStatusStatement sqlStatement) {
+ this.databaseType = databaseType;
+ this.sqlStatement = sqlStatement;
+ tablesContext = new TablesContext(Collections.emptyList());
}
@Override
diff --git
a/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowTablesStatementContext.java
b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowTablesStatementContext.java
index 72dcc39cbc0..930b4d43fa0 100644
---
a/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowTablesStatementContext.java
+++
b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/type/dal/ShowTablesStatementContext.java
@@ -19,7 +19,7 @@ package
org.apache.shardingsphere.infra.binder.context.statement.type.dal;
import lombok.Getter;
import
org.apache.shardingsphere.infra.binder.context.segment.table.TablesContext;
-import
org.apache.shardingsphere.infra.binder.context.statement.CommonSQLStatementContext;
+import
org.apache.shardingsphere.infra.binder.context.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.context.type.RemoveAvailable;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.sql.parser.statement.core.segment.SQLSegment;
@@ -33,20 +33,18 @@ import java.util.LinkedList;
* Show tables statement context.
*/
@Getter
-public final class ShowTablesStatementContext extends
CommonSQLStatementContext implements RemoveAvailable {
+public final class ShowTablesStatementContext implements SQLStatementContext,
RemoveAvailable {
- public ShowTablesStatementContext(final DatabaseType databaseType, final
ShowTablesStatement sqlStatement) {
- super(databaseType, sqlStatement);
- }
+ private final DatabaseType databaseType;
- @Override
- public ShowTablesStatement getSqlStatement() {
- return (ShowTablesStatement) super.getSqlStatement();
- }
+ private final ShowTablesStatement sqlStatement;
- @Override
- public TablesContext getTablesContext() {
- return new TablesContext(Collections.emptyList());
+ private final TablesContext tablesContext;
+
+ public ShowTablesStatementContext(final DatabaseType databaseType, final
ShowTablesStatement sqlStatement) {
+ this.databaseType = databaseType;
+ this.sqlStatement = sqlStatement;
+ tablesContext = new TablesContext(Collections.emptyList());
}
@Override