Loading sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/extractor/impl/dml/PredicateExtractor.java +9 −9 Original line number Diff line number Diff line Loading @@ -27,7 +27,7 @@ import org.apache.shardingsphere.core.parse.antlr.extractor.impl.common.column.C import org.apache.shardingsphere.core.parse.antlr.extractor.util.ExtractorUtils; import org.apache.shardingsphere.core.parse.antlr.extractor.util.RuleName; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.column.ColumnSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndPredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.OrConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.PredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.expr.BetweenValueExpressionSegment; Loading Loading @@ -98,9 +98,9 @@ public final class PredicateExtractor { return Optional.absent(); } OrConditionSegment result = new OrConditionSegment(); AndConditionSegment newAndCondition = new AndConditionSegment(); newAndCondition.getPredicates().add(predicate.get()); result.getAndConditions().add(newAndCondition); AndPredicateSegment newAndPredicate = new AndPredicateSegment(); newAndPredicate.getPredicates().add(predicate.get()); result.getAndPredicates().add(newAndPredicate); return Optional.of(result); } Loading Loading @@ -194,16 +194,16 @@ public final class PredicateExtractor { private OrConditionSegment mergeCondition(final OrConditionSegment leftOrCondition, final OrConditionSegment rightOrCondition, final String operator) { if (LogicalOperator.isOrOperator(operator)) { leftOrCondition.getAndConditions().addAll(rightOrCondition.getAndConditions()); leftOrCondition.getAndPredicates().addAll(rightOrCondition.getAndPredicates()); return leftOrCondition; } OrConditionSegment result = new OrConditionSegment(); for (AndConditionSegment each : leftOrCondition.getAndConditions()) { for (AndConditionSegment eachRightOr : rightOrCondition.getAndConditions()) { AndConditionSegment tempList = new AndConditionSegment(); for (AndPredicateSegment each : leftOrCondition.getAndPredicates()) { for (AndPredicateSegment eachRightOr : rightOrCondition.getAndPredicates()) { AndPredicateSegment tempList = new AndPredicateSegment(); tempList.getPredicates().addAll(each.getPredicates()); tempList.getPredicates().addAll(eachRightOr.getPredicates()); result.getAndConditions().add(tempList); result.getAndPredicates().add(tempList); } } return result; Loading sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/extractor/impl/dml/WhereExtractor.java +1 −1 Original line number Diff line number Diff line Loading @@ -47,7 +47,7 @@ public final class WhereExtractor implements OptionalSQLSegmentExtractor { setPropertiesForRevert(result, parameterMarkerIndexes, whereNode.get()); Optional<OrConditionSegment> orConditionSegment = extractOrConditionSegment(parameterMarkerIndexes, whereNode.get()); if (orConditionSegment.isPresent()) { result.getConditions().getAndConditions().addAll(orConditionSegment.get().getAndConditions()); result.getConditions().getAndPredicates().addAll(orConditionSegment.get().getAndPredicates()); } } return Optional.of(result); Loading sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/filler/encrypt/dml/EncryptOrConditionFiller.java +2 −2 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ import lombok.RequiredArgsConstructor; import org.apache.shardingsphere.core.metadata.table.ShardingTableMetaData; import org.apache.shardingsphere.core.metadata.table.TableMetaData; import org.apache.shardingsphere.core.parse.antlr.filler.api.SQLSegmentFiller; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndPredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.OrConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.PredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.statement.SQLStatement; Loading Loading @@ -83,7 +83,7 @@ public class EncryptOrConditionFiller implements SQLSegmentFiller<OrConditionSeg private OrCondition filterCondition(final SQLStatement sqlStatement, final OrConditionSegment orCondition) { OrCondition result = new OrCondition(); Set<Integer> filledConditionStopIndexes = new HashSet<>(); for (AndConditionSegment each : orCondition.getAndConditions()) { for (AndPredicateSegment each : orCondition.getAndPredicates()) { for (PredicateSegment predicate : each.getPredicates()) { if (null == predicate.getColumn()) { continue; Loading sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/filler/sharding/dml/OrConditionFiller.java +3 −3 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ import org.apache.shardingsphere.core.metadata.table.ShardingTableMetaData; import org.apache.shardingsphere.core.metadata.table.TableMetaData; import org.apache.shardingsphere.core.parse.antlr.filler.api.SQLSegmentFiller; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.column.ColumnSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndPredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.OrConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.PredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.statement.SQLStatement; Loading Loading @@ -102,7 +102,7 @@ public final class OrConditionFiller implements SQLSegmentFiller<OrConditionSegm private OrCondition filterCondition(final ShardingTableMetaData shardingTableMetaData, final SQLStatement sqlStatement, final OrConditionSegment orCondition, final ShardingRule shardingRule) { OrCondition result = new OrCondition(); for (AndConditionSegment each : orCondition.getAndConditions()) { for (AndPredicateSegment each : orCondition.getAndPredicates()) { List<PredicateSegment> predicates = new LinkedList<>(); boolean needSharding = false; for (PredicateSegment predicate : each.getPredicates()) { Loading @@ -129,7 +129,7 @@ public final class OrConditionFiller implements SQLSegmentFiller<OrConditionSegm } } Set<Integer> filledConditionStopIndexes = new HashSet<>(); for (AndConditionSegment each : orCondition.getAndConditions()) { for (AndPredicateSegment each : orCondition.getAndPredicates()) { for (PredicateSegment predicate : each.getPredicates()) { if (null == predicate.getColumn()) { continue; Loading sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/sql/segment/dml/condition/AndConditionSegment.java→sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/sql/segment/dml/condition/AndPredicateSegment.java +2 −2 Original line number Diff line number Diff line Loading @@ -25,13 +25,13 @@ import java.util.LinkedList; import java.util.List; /** * And condition segment. * And predicate segment. * * @author duhongjun */ @RequiredArgsConstructor @Getter public final class AndConditionSegment implements SQLSegment { public final class AndPredicateSegment implements SQLSegment { private List<PredicateSegment> predicates = new LinkedList<>(); } Loading
sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/extractor/impl/dml/PredicateExtractor.java +9 −9 Original line number Diff line number Diff line Loading @@ -27,7 +27,7 @@ import org.apache.shardingsphere.core.parse.antlr.extractor.impl.common.column.C import org.apache.shardingsphere.core.parse.antlr.extractor.util.ExtractorUtils; import org.apache.shardingsphere.core.parse.antlr.extractor.util.RuleName; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.column.ColumnSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndPredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.OrConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.PredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.expr.BetweenValueExpressionSegment; Loading Loading @@ -98,9 +98,9 @@ public final class PredicateExtractor { return Optional.absent(); } OrConditionSegment result = new OrConditionSegment(); AndConditionSegment newAndCondition = new AndConditionSegment(); newAndCondition.getPredicates().add(predicate.get()); result.getAndConditions().add(newAndCondition); AndPredicateSegment newAndPredicate = new AndPredicateSegment(); newAndPredicate.getPredicates().add(predicate.get()); result.getAndPredicates().add(newAndPredicate); return Optional.of(result); } Loading Loading @@ -194,16 +194,16 @@ public final class PredicateExtractor { private OrConditionSegment mergeCondition(final OrConditionSegment leftOrCondition, final OrConditionSegment rightOrCondition, final String operator) { if (LogicalOperator.isOrOperator(operator)) { leftOrCondition.getAndConditions().addAll(rightOrCondition.getAndConditions()); leftOrCondition.getAndPredicates().addAll(rightOrCondition.getAndPredicates()); return leftOrCondition; } OrConditionSegment result = new OrConditionSegment(); for (AndConditionSegment each : leftOrCondition.getAndConditions()) { for (AndConditionSegment eachRightOr : rightOrCondition.getAndConditions()) { AndConditionSegment tempList = new AndConditionSegment(); for (AndPredicateSegment each : leftOrCondition.getAndPredicates()) { for (AndPredicateSegment eachRightOr : rightOrCondition.getAndPredicates()) { AndPredicateSegment tempList = new AndPredicateSegment(); tempList.getPredicates().addAll(each.getPredicates()); tempList.getPredicates().addAll(eachRightOr.getPredicates()); result.getAndConditions().add(tempList); result.getAndPredicates().add(tempList); } } return result; Loading
sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/extractor/impl/dml/WhereExtractor.java +1 −1 Original line number Diff line number Diff line Loading @@ -47,7 +47,7 @@ public final class WhereExtractor implements OptionalSQLSegmentExtractor { setPropertiesForRevert(result, parameterMarkerIndexes, whereNode.get()); Optional<OrConditionSegment> orConditionSegment = extractOrConditionSegment(parameterMarkerIndexes, whereNode.get()); if (orConditionSegment.isPresent()) { result.getConditions().getAndConditions().addAll(orConditionSegment.get().getAndConditions()); result.getConditions().getAndPredicates().addAll(orConditionSegment.get().getAndPredicates()); } } return Optional.of(result); Loading
sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/filler/encrypt/dml/EncryptOrConditionFiller.java +2 −2 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ import lombok.RequiredArgsConstructor; import org.apache.shardingsphere.core.metadata.table.ShardingTableMetaData; import org.apache.shardingsphere.core.metadata.table.TableMetaData; import org.apache.shardingsphere.core.parse.antlr.filler.api.SQLSegmentFiller; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndPredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.OrConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.PredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.statement.SQLStatement; Loading Loading @@ -83,7 +83,7 @@ public class EncryptOrConditionFiller implements SQLSegmentFiller<OrConditionSeg private OrCondition filterCondition(final SQLStatement sqlStatement, final OrConditionSegment orCondition) { OrCondition result = new OrCondition(); Set<Integer> filledConditionStopIndexes = new HashSet<>(); for (AndConditionSegment each : orCondition.getAndConditions()) { for (AndPredicateSegment each : orCondition.getAndPredicates()) { for (PredicateSegment predicate : each.getPredicates()) { if (null == predicate.getColumn()) { continue; Loading
sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/filler/sharding/dml/OrConditionFiller.java +3 −3 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ import org.apache.shardingsphere.core.metadata.table.ShardingTableMetaData; import org.apache.shardingsphere.core.metadata.table.TableMetaData; import org.apache.shardingsphere.core.parse.antlr.filler.api.SQLSegmentFiller; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.column.ColumnSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.AndPredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.OrConditionSegment; import org.apache.shardingsphere.core.parse.antlr.sql.segment.dml.condition.PredicateSegment; import org.apache.shardingsphere.core.parse.antlr.sql.statement.SQLStatement; Loading Loading @@ -102,7 +102,7 @@ public final class OrConditionFiller implements SQLSegmentFiller<OrConditionSegm private OrCondition filterCondition(final ShardingTableMetaData shardingTableMetaData, final SQLStatement sqlStatement, final OrConditionSegment orCondition, final ShardingRule shardingRule) { OrCondition result = new OrCondition(); for (AndConditionSegment each : orCondition.getAndConditions()) { for (AndPredicateSegment each : orCondition.getAndPredicates()) { List<PredicateSegment> predicates = new LinkedList<>(); boolean needSharding = false; for (PredicateSegment predicate : each.getPredicates()) { Loading @@ -129,7 +129,7 @@ public final class OrConditionFiller implements SQLSegmentFiller<OrConditionSegm } } Set<Integer> filledConditionStopIndexes = new HashSet<>(); for (AndConditionSegment each : orCondition.getAndConditions()) { for (AndPredicateSegment each : orCondition.getAndPredicates()) { for (PredicateSegment predicate : each.getPredicates()) { if (null == predicate.getColumn()) { continue; Loading
sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/sql/segment/dml/condition/AndConditionSegment.java→sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/sql/segment/dml/condition/AndPredicateSegment.java +2 −2 Original line number Diff line number Diff line Loading @@ -25,13 +25,13 @@ import java.util.LinkedList; import java.util.List; /** * And condition segment. * And predicate segment. * * @author duhongjun */ @RequiredArgsConstructor @Getter public final class AndConditionSegment implements SQLSegment { public final class AndPredicateSegment implements SQLSegment { private List<PredicateSegment> predicates = new LinkedList<>(); }