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 fd4e3f3821c Rename and move QualifiedColumn (#36038)
fd4e3f3821c is described below
commit fd4e3f3821c8ef66946f4dd8b675dfff13e6495d
Author: Liang Zhang <[email protected]>
AuthorDate: Sat Jul 19 21:51:56 2025 +0800
Rename and move QualifiedColumn (#36038)
* Rename and move QualifiedColumn
* Rename and move QualifiedColumn
---
...stgreSQL_is_Improved_26.8%_with_Version_5.1.0.en.md | 2 +-
.../exception/data/ShardingValueDataTypeException.java | 4 ++--
.../engine/WhereClauseShardingConditionEngine.java | 18 +++++++++---------
.../condition/generator/ConditionValueGenerator.java | 4 ++--
.../generator/ConditionValueGeneratorFactory.java | 5 +++--
.../impl/ConditionValueBetweenOperatorGenerator.java | 4 ++--
.../impl/ConditionValueCompareOperatorGenerator.java | 7 ++++---
.../impl/ConditionValueInOperatorGenerator.java | 4 ++--
.../generator/ConditionValueGeneratorFactoryTest.java | 4 ++--
.../ConditionValueBetweenOperatorGeneratorTest.java | 4 ++--
.../ConditionValueCompareOperatorGeneratorTest.java | 4 ++--
.../impl/ConditionValueInOperatorGeneratorTest.java | 4 ++--
.../metadata/database/schema/QualifiedColumn.java | 12 ++++++------
.../metadata/database/schema/QualifiedColumnTest.java | 12 ++++++------
14 files changed, 45 insertions(+), 43 deletions(-)
diff --git
a/docs/blog/content/material/2022_03_23_Apache_ShardingSphere_Proxy_Performance_with_PostgreSQL_is_Improved_26.8%_with_Version_5.1.0.en.md
b/docs/blog/content/material/2022_03_23_Apache_ShardingSphere_Proxy_Performance_with_PostgreSQL_is_Improved_26.8%_with_Version_5.1.0.en.md
index e168a3e7a11..61739b69e02 100644
---
a/docs/blog/content/material/2022_03_23_Apache_ShardingSphere_Proxy_Performance_with_PostgreSQL_is_Improved_26.8%_with_Version_5.1.0.en.md
+++
b/docs/blog/content/material/2022_03_23_Apache_ShardingSphere_Proxy_Performance_with_PostgreSQL_is_Improved_26.8%_with_Version_5.1.0.en.md
@@ -145,7 +145,7 @@ The testing results above may be related to aarch64 and
JDK, but the stream itse
There are many cases of avoiding unnecessary logic repetitive calls:
- hashCode calculation
-The ShardingSphere class
`org.apache.shardingsphere.sharding.route.engine.condition.Column` implements
the `equals` and `hashCode` methods:
+The ShardingSphere class
`org.apache.shardingsphere.sharding.route.engine.condition.QualifiedColumn`
implements the `equals` and `hashCode` methods:
```java
@RequiredArgsConstructor
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/exception/data/ShardingValueDataTypeException.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/exception/data/ShardingValueDataTypeException.java
index a29c24b2caa..81717fa8089 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/exception/data/ShardingValueDataTypeException.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/exception/data/ShardingValueDataTypeException.java
@@ -18,8 +18,8 @@
package org.apache.shardingsphere.sharding.exception.data;
import
org.apache.shardingsphere.infra.exception.core.external.sql.sqlstate.XOpenSQLState;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import org.apache.shardingsphere.sharding.exception.ShardingSQLException;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
/**
* Sharding value data type exception.
@@ -28,7 +28,7 @@ public final class ShardingValueDataTypeException extends
ShardingSQLException {
private static final long serialVersionUID = -4833106947304679015L;
- public ShardingValueDataTypeException(final Column column) {
+ public ShardingValueDataTypeException(final QualifiedColumn column) {
super(XOpenSQLState.INVALID_DATA_TYPE, 21, "Found different types for
sharding value '%s'.", column);
}
}
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/WhereClauseShardingConditionEngine.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/WhereClauseShardingConditionEngine.java
index 4da5e1010f7..da6418cccd3 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/WhereClauseShardingConditionEngine.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/WhereClauseShardingConditionEngine.java
@@ -19,12 +19,12 @@ package
org.apache.shardingsphere.sharding.route.engine.condition.engine;
import com.google.common.collect.Range;
import lombok.RequiredArgsConstructor;
+import
org.apache.shardingsphere.infra.binder.context.available.WhereContextAvailable;
import
org.apache.shardingsphere.infra.binder.context.extractor.SQLStatementContextExtractor;
import
org.apache.shardingsphere.infra.binder.context.statement.SQLStatementContext;
-import
org.apache.shardingsphere.infra.binder.context.available.WhereContextAvailable;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.exception.data.ShardingValueDataTypeException;
import
org.apache.shardingsphere.sharding.route.engine.condition.AlwaysFalseShardingCondition;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
import
org.apache.shardingsphere.sharding.route.engine.condition.ShardingCondition;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.ConditionValueGeneratorFactory;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.AlwaysFalseShardingConditionValue;
@@ -85,7 +85,7 @@ public final class WhereClauseShardingConditionEngine {
Collection<AndPredicate> andPredicates =
ExpressionExtractor.extractAndPredicates(expression);
Collection<ShardingCondition> result = new LinkedList<>();
for (AndPredicate each : andPredicates) {
- Map<Column, Collection<ShardingConditionValue>>
shardingConditionValues = createShardingConditionValueMap(each.getPredicates(),
params);
+ Map<QualifiedColumn, Collection<ShardingConditionValue>>
shardingConditionValues = createShardingConditionValueMap(each.getPredicates(),
params);
if (shardingConditionValues.isEmpty()) {
return Collections.emptyList();
}
@@ -97,8 +97,8 @@ public final class WhereClauseShardingConditionEngine {
return result;
}
- private Map<Column, Collection<ShardingConditionValue>>
createShardingConditionValueMap(final Collection<ExpressionSegment> predicates,
final List<Object> params) {
- Map<Column, Collection<ShardingConditionValue>> result = new
HashMap<>(predicates.size(), 1F);
+ private Map<QualifiedColumn, Collection<ShardingConditionValue>>
createShardingConditionValueMap(final Collection<ExpressionSegment> predicates,
final List<Object> params) {
+ Map<QualifiedColumn, Collection<ShardingConditionValue>> result = new
HashMap<>(predicates.size(), 1F);
for (ExpressionSegment each : predicates) {
for (ColumnSegment columnSegment : ColumnExtractor.extract(each)) {
String tableName =
columnSegment.getColumnBoundInfo().getOriginalTable().getValue();
@@ -106,7 +106,7 @@ public final class WhereClauseShardingConditionEngine {
if (!shardingColumn.isPresent()) {
continue;
}
- Column column = new Column(shardingColumn.get(), tableName);
+ QualifiedColumn column = new
QualifiedColumn(shardingColumn.get(), tableName);
Optional<ShardingConditionValue> shardingConditionValue =
ConditionValueGeneratorFactory.generate(each, column, params,
timestampServiceRule);
if (!shardingConditionValue.isPresent()) {
continue;
@@ -117,9 +117,9 @@ public final class WhereClauseShardingConditionEngine {
return result;
}
- private ShardingCondition createShardingCondition(final Map<Column,
Collection<ShardingConditionValue>> shardingConditionValues) {
+ private ShardingCondition createShardingCondition(final
Map<QualifiedColumn, Collection<ShardingConditionValue>>
shardingConditionValues) {
ShardingCondition result = new ShardingCondition();
- for (Entry<Column, Collection<ShardingConditionValue>> entry :
shardingConditionValues.entrySet()) {
+ for (Entry<QualifiedColumn, Collection<ShardingConditionValue>> entry
: shardingConditionValues.entrySet()) {
try {
ShardingConditionValue shardingConditionValue =
mergeShardingConditionValues(entry.getKey(), entry.getValue());
if (shardingConditionValue instanceof
AlwaysFalseShardingConditionValue) {
@@ -134,7 +134,7 @@ public final class WhereClauseShardingConditionEngine {
}
@SuppressWarnings({"unchecked", "rawtypes"})
- private ShardingConditionValue mergeShardingConditionValues(final Column
column, final Collection<ShardingConditionValue> shardingConditionValues) {
+ private ShardingConditionValue mergeShardingConditionValues(final
QualifiedColumn column, final Collection<ShardingConditionValue>
shardingConditionValues) {
Collection<Comparable<?>> listValue = null;
Range<Comparable<?>> rangeValue = null;
Set<Integer> parameterMarkerIndexes = new HashSet<>();
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGenerator.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGenerator.java
index f11a117ca03..ad6ef1e1bd5 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGenerator.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGenerator.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.sharding.route.engine.condition.generator;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.ShardingConditionValue;
import
org.apache.shardingsphere.sql.parser.statement.core.segment.dml.expr.ExpressionSegment;
import org.apache.shardingsphere.timeservice.core.rule.TimestampServiceRule;
@@ -41,5 +41,5 @@ public interface ConditionValueGenerator<T extends
ExpressionSegment> {
* @param timestampServiceRule time service rule
* @return route value
*/
- Optional<ShardingConditionValue> generate(T predicateRightValue, Column
column, List<Object> params, TimestampServiceRule timestampServiceRule);
+ Optional<ShardingConditionValue> generate(T predicateRightValue,
QualifiedColumn column, List<Object> params, TimestampServiceRule
timestampServiceRule);
}
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGeneratorFactory.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGeneratorFactory.java
index 0b08a3bdb59..55e80919223 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGeneratorFactory.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGeneratorFactory.java
@@ -19,7 +19,7 @@ package
org.apache.shardingsphere.sharding.route.engine.condition.generator;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl.ConditionValueBetweenOperatorGenerator;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl.ConditionValueCompareOperatorGenerator;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl.ConditionValueInOperatorGenerator;
@@ -54,7 +54,8 @@ public final class ConditionValueGeneratorFactory {
* @param timestampServiceRule time service rule
* @return route value
*/
- public static Optional<ShardingConditionValue> generate(final
ExpressionSegment predicate, final Column column, final List<Object> params,
final TimestampServiceRule timestampServiceRule) {
+ public static Optional<ShardingConditionValue> generate(final
ExpressionSegment predicate, final QualifiedColumn column, final List<Object>
params,
+ final
TimestampServiceRule timestampServiceRule) {
if (predicate instanceof BinaryOperationExpression) {
return
COMPARE_OPERATOR_GENERATOR.generate((BinaryOperationExpression) predicate,
column, params, timestampServiceRule);
}
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueBetweenOperatorGenerator.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueBetweenOperatorGenerator.java
index e7d36911c29..a0bc6658161 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueBetweenOperatorGenerator.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueBetweenOperatorGenerator.java
@@ -18,7 +18,7 @@
package
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl;
import com.google.common.collect.Range;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.ExpressionConditionUtils;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.ConditionValue;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.ConditionValueGenerator;
@@ -39,7 +39,7 @@ import java.util.Optional;
public final class ConditionValueBetweenOperatorGenerator implements
ConditionValueGenerator<BetweenExpression> {
@Override
- public Optional<ShardingConditionValue> generate(final BetweenExpression
predicate, final Column column, final List<Object> params, final
TimestampServiceRule timestampServiceRule) {
+ public Optional<ShardingConditionValue> generate(final BetweenExpression
predicate, final QualifiedColumn column, final List<Object> params, final
TimestampServiceRule timestampServiceRule) {
ConditionValue betweenConditionValue = new
ConditionValue(predicate.getBetweenExpr(), params);
ConditionValue andConditionValue = new
ConditionValue(predicate.getAndExpr(), params);
Optional<Comparable<?>> betweenValue =
betweenConditionValue.getValue();
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueCompareOperatorGenerator.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueCompareOperatorGenerator.java
index ab10fad48b0..79df3f49385 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueCompareOperatorGenerator.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueCompareOperatorGenerator.java
@@ -18,7 +18,7 @@
package
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl;
import com.google.common.collect.Range;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.ExpressionConditionUtils;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.ConditionValue;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.ConditionValueGenerator;
@@ -58,7 +58,8 @@ public final class ConditionValueCompareOperatorGenerator
implements ConditionVa
private static final Collection<String> OPERATORS = new
HashSet<>(Arrays.asList(EQUAL, GREATER_THAN, LESS_THAN, AT_LEAST, AT_MOST, IS));
@Override
- public Optional<ShardingConditionValue> generate(final
BinaryOperationExpression predicate, final Column column, final List<Object>
params, final TimestampServiceRule timestampServiceRule) {
+ public Optional<ShardingConditionValue> generate(final
BinaryOperationExpression predicate, final QualifiedColumn column, final
List<Object> params,
+ final
TimestampServiceRule timestampServiceRule) {
String operator = predicate.getOperator().toUpperCase();
if (!isSupportedOperator(operator)) {
return Optional.empty();
@@ -78,7 +79,7 @@ public final class ConditionValueCompareOperatorGenerator
implements ConditionVa
return Optional.empty();
}
- private Optional<ShardingConditionValue> generate(final Comparable<?>
comparable, final Column column, final String operator, final int
parameterMarkerIndex) {
+ private Optional<ShardingConditionValue> generate(final Comparable<?>
comparable, final QualifiedColumn column, final String operator, final int
parameterMarkerIndex) {
String columnName = column.getName();
String tableName = column.getTableName();
List<Integer> parameterMarkerIndexes = parameterMarkerIndex > -1 ?
Collections.singletonList(parameterMarkerIndex) : Collections.emptyList();
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueInOperatorGenerator.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueInOperatorGenerator.java
index dc6467f29f5..45f8f8d11b0 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueInOperatorGenerator.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueInOperatorGenerator.java
@@ -17,7 +17,7 @@
package
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.ExpressionConditionUtils;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.ConditionValue;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.ConditionValueGenerator;
@@ -39,7 +39,7 @@ import java.util.Optional;
public final class ConditionValueInOperatorGenerator implements
ConditionValueGenerator<InExpression> {
@Override
- public Optional<ShardingConditionValue> generate(final InExpression
predicate, final Column column, final List<Object> params, final
TimestampServiceRule timestampServiceRule) {
+ public Optional<ShardingConditionValue> generate(final InExpression
predicate, final QualifiedColumn column, final List<Object> params, final
TimestampServiceRule timestampServiceRule) {
if (predicate.isNot()) {
return Optional.empty();
}
diff --git
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGeneratorFactoryTest.java
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGeneratorFactoryTest.java
index 5d021d5a001..022f287ab4f 100644
---
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGeneratorFactoryTest.java
+++
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/ConditionValueGeneratorFactoryTest.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.sharding.route.engine.condition.generator;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl.ConditionValueBetweenOperatorGenerator;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl.ConditionValueCompareOperatorGenerator;
import
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl.ConditionValueInOperatorGenerator;
@@ -45,7 +45,7 @@ import static org.mockito.Mockito.mock;
class ConditionValueGeneratorFactoryTest {
- private final Column column = new Column("id", "tbl");
+ private final QualifiedColumn column = new QualifiedColumn("id", "tbl");
@Test
void assertGenerateBinaryOperationExpression() {
diff --git
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueBetweenOperatorGeneratorTest.java
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueBetweenOperatorGeneratorTest.java
index 9a4814e8cda..d20fbc63c85 100644
---
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueBetweenOperatorGeneratorTest.java
+++
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueBetweenOperatorGeneratorTest.java
@@ -18,7 +18,7 @@
package
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl;
import com.google.common.collect.Range;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.RangeShardingConditionValue;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.ShardingConditionValue;
import
org.apache.shardingsphere.sql.parser.statement.core.segment.dml.column.ColumnSegment;
@@ -56,7 +56,7 @@ class ConditionValueBetweenOperatorGeneratorTest {
private final ConditionValueBetweenOperatorGenerator generator = new
ConditionValueBetweenOperatorGenerator();
- private final Column column = new Column("id", "tbl");
+ private final QualifiedColumn column = new QualifiedColumn("id", "tbl");
private final TimestampServiceRule timestampServiceRule = new
TimestampServiceRule(new TimestampServiceRuleConfiguration("System", new
Properties()));
diff --git
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueCompareOperatorGeneratorTest.java
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueCompareOperatorGeneratorTest.java
index eb4923b845a..85f5fba2f32 100644
---
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueCompareOperatorGeneratorTest.java
+++
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueCompareOperatorGeneratorTest.java
@@ -18,7 +18,7 @@
package
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl;
import com.google.common.collect.Range;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.ListShardingConditionValue;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.RangeShardingConditionValue;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.ShardingConditionValue;
@@ -46,7 +46,7 @@ class ConditionValueCompareOperatorGeneratorTest {
private final ConditionValueCompareOperatorGenerator generator = new
ConditionValueCompareOperatorGenerator();
- private final Column column = new Column("id", "tbl");
+ private final QualifiedColumn column = new QualifiedColumn("id", "tbl");
@SuppressWarnings("unchecked")
@Test
diff --git
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueInOperatorGeneratorTest.java
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueInOperatorGeneratorTest.java
index 52b8323aa06..4b8658d667c 100644
---
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueInOperatorGeneratorTest.java
+++
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/generator/impl/ConditionValueInOperatorGeneratorTest.java
@@ -17,7 +17,7 @@
package
org.apache.shardingsphere.sharding.route.engine.condition.generator.impl;
-import org.apache.shardingsphere.sharding.route.engine.condition.Column;
+import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedColumn;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.ListShardingConditionValue;
import
org.apache.shardingsphere.sharding.route.engine.condition.value.ShardingConditionValue;
import
org.apache.shardingsphere.sql.parser.statement.core.segment.dml.column.ColumnSegment;
@@ -48,7 +48,7 @@ class ConditionValueInOperatorGeneratorTest {
private final ConditionValueInOperatorGenerator generator = new
ConditionValueInOperatorGenerator();
- private final Column column = new Column("id", "tbl");
+ private final QualifiedColumn column = new QualifiedColumn("id", "tbl");
private final TimestampServiceRule timestampServiceRule = new
TimestampServiceRule(new TimestampServiceRuleConfiguration("System", new
Properties()));
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/Column.java
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/QualifiedColumn.java
similarity index 83%
rename from
features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/Column.java
rename to
infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/QualifiedColumn.java
index 68dd9e4c6de..f74d543ab27 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/Column.java
+++
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/QualifiedColumn.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.sharding.route.engine.condition;
+package org.apache.shardingsphere.infra.metadata.database.schema;
import lombok.Getter;
import lombok.ToString;
@@ -23,11 +23,11 @@ import lombok.ToString;
import java.util.Objects;
/**
- * Column.
+ * Qualified column.
*/
@Getter
@ToString
-public final class Column {
+public final class QualifiedColumn {
private final String name;
@@ -35,7 +35,7 @@ public final class Column {
private final int hashCode;
- public Column(final String name, final String tableName) {
+ public QualifiedColumn(final String name, final String tableName) {
this.name = name;
this.tableName = tableName;
hashCode = Objects.hash(name.toUpperCase(), tableName.toUpperCase());
@@ -43,8 +43,8 @@ public final class Column {
@Override
public boolean equals(final Object obj) {
- if (obj instanceof Column) {
- Column column = (Column) obj;
+ if (obj instanceof QualifiedColumn) {
+ QualifiedColumn column = (QualifiedColumn) obj;
return null != name && name.equalsIgnoreCase(column.name) && null
!= tableName && tableName.equalsIgnoreCase(column.tableName);
}
return false;
diff --git
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/ColumnTest.java
b/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/QualifiedColumnTest.java
similarity index 73%
rename from
features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/ColumnTest.java
rename to
infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/QualifiedColumnTest.java
index f6dd94265dd..e67ab58ebf3 100644
---
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/ColumnTest.java
+++
b/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/QualifiedColumnTest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.sharding.route.engine.condition;
+package org.apache.shardingsphere.infra.metadata.database.schema;
import org.junit.jupiter.api.Test;
@@ -23,25 +23,25 @@ import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.MatcherAssert.assertThat;
-class ColumnTest {
+class QualifiedColumnTest {
@Test
void assertEqualsForDifferentObjectType() {
- assertThat(new Column("col", "tbl"), not(new Object()));
+ assertThat(new QualifiedColumn("col", "tbl"), not(new Object()));
}
@Test
void assertEquals() {
- assertThat(new Column("col", "tbl"), is(new Column("COL", "TBL")));
+ assertThat(new QualifiedColumn("col", "tbl"), is(new
QualifiedColumn("COL", "TBL")));
}
@Test
void assertNotEqualsWhenColumnNameIsDifferent() {
- assertThat(new Column("col", "tbl"), not(new Column("col1", "tbl")));
+ assertThat(new QualifiedColumn("col", "tbl"), not(new
QualifiedColumn("col1", "tbl")));
}
@Test
void assertNotEqualsWhenTableNameIsDifferent() {
- assertThat(new Column("col", "tbl"), not(new Column("col", "tbl1")));
+ assertThat(new QualifiedColumn("col", "tbl"), not(new
QualifiedColumn("col", "tbl1")));
}
}