This is an automated email from the ASF dual-hosted git repository.
chengzhang 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 b06c0c390a8 Fix sonar issue on PostgreSQLDDLStatementVisitor (#25971)
b06c0c390a8 is described below
commit b06c0c390a8f6093313e0ef3f44fd6b9eecc64e9
Author: Liang Zhang <[email protected]>
AuthorDate: Wed May 31 23:51:10 2023 +0800
Fix sonar issue on PostgreSQLDDLStatementVisitor (#25971)
* Fix sonar issue on PostgreSQLDDLStatementVisitor
* Fix sonar issue on OracleDMLStatementVisitor
---
.../statement/type/OracleDMLStatementVisitor.java | 30 ++++++------
.../type/PostgreSQLDDLStatementVisitor.java | 56 ++++++++++++----------
2 files changed, 46 insertions(+), 40 deletions(-)
diff --git
a/parser/sql/dialect/oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/type/OracleDMLStatementVisitor.java
b/parser/sql/dialect/oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/type/OracleDMLStatementVisitor.java
index 89485425ab0..f08f3512bc2 100644
---
a/parser/sql/dialect/oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/type/OracleDMLStatementVisitor.java
+++
b/parser/sql/dialect/oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/type/OracleDMLStatementVisitor.java
@@ -230,6 +230,7 @@ public final class OracleDMLStatementVisitor extends
OracleStatementVisitor impl
return result;
}
+ @SuppressWarnings("unchecked")
@Override
public ASTNode visitInsertIntoClause(final InsertIntoClauseContext ctx) {
OracleInsertStatement result = new OracleInsertStatement();
@@ -721,32 +722,30 @@ public final class OracleDMLStatementVisitor extends
OracleStatementVisitor impl
if (projection instanceof BinaryOperationExpression) {
BinaryOperationExpression binaryExpression =
(BinaryOperationExpression) projection;
int startIndex = binaryExpression.getStartIndex();
- int stopIndex = null != alias ? alias.getStopIndex() :
binaryExpression.getStopIndex();
+ int stopIndex = null == alias ? binaryExpression.getStopIndex() :
alias.getStopIndex();
ExpressionProjectionSegment result = new
ExpressionProjectionSegment(startIndex, stopIndex, binaryExpression.getText(),
binaryExpression);
result.setAlias(alias);
return result;
}
if (projection instanceof DatetimeExpression) {
DatetimeExpression datetimeExpression = (DatetimeExpression)
projection;
- if (null != datetimeExpression.getRight()) {
- return new
DatetimeProjectionSegment(datetimeExpression.getStartIndex(),
datetimeExpression.getStopIndex(), datetimeExpression.getLeft(),
datetimeExpression.getRight(),
- datetimeExpression.getText());
- }
- return new
DatetimeProjectionSegment(datetimeExpression.getStartIndex(),
datetimeExpression.getStopIndex(), datetimeExpression.getLeft(),
datetimeExpression.getText());
+ return null == datetimeExpression.getRight()
+ ? new
DatetimeProjectionSegment(datetimeExpression.getStartIndex(),
datetimeExpression.getStopIndex(), datetimeExpression.getLeft(),
datetimeExpression.getText())
+ : new
DatetimeProjectionSegment(datetimeExpression.getStartIndex(),
datetimeExpression.getStopIndex(),
+ datetimeExpression.getLeft(),
datetimeExpression.getRight(), datetimeExpression.getText());
}
if (projection instanceof XmlQueryAndExistsFunctionSegment) {
XmlQueryAndExistsFunctionSegment xmlExistsFunctionSegment =
(XmlQueryAndExistsFunctionSegment) projection;
- return new
XmlQueryAndExistsFunctionSegment(xmlExistsFunctionSegment.getStartIndex(),
xmlExistsFunctionSegment.getStopIndex(),
- xmlExistsFunctionSegment.getFunctionName(),
xmlExistsFunctionSegment.getXQueryString(), xmlExistsFunctionSegment.getText());
+ return new
XmlQueryAndExistsFunctionSegment(xmlExistsFunctionSegment.getStartIndex(),
+ xmlExistsFunctionSegment.getStopIndex(),
xmlExistsFunctionSegment.getFunctionName(),
xmlExistsFunctionSegment.getXQueryString(), xmlExistsFunctionSegment.getText());
}
if (projection instanceof XmlPiFunctionSegment) {
XmlPiFunctionSegment xmlPiFunctionSegment = (XmlPiFunctionSegment)
projection;
- if (null != xmlPiFunctionSegment.getIdentifier()) {
- return new
XmlPiFunctionSegment(xmlPiFunctionSegment.getStartIndex(),
xmlPiFunctionSegment.getStopIndex(), xmlPiFunctionSegment.getFunctionName(),
- xmlPiFunctionSegment.getIdentifier(),
xmlPiFunctionSegment.getValueExpr(), xmlPiFunctionSegment.getText());
- }
- return new
XmlPiFunctionSegment(xmlPiFunctionSegment.getStartIndex(),
xmlPiFunctionSegment.getStopIndex(), xmlPiFunctionSegment.getFunctionName(),
- xmlPiFunctionSegment.getEvalNameValueExpr(),
xmlPiFunctionSegment.getValueExpr(), xmlPiFunctionSegment.getText());
+ return null == xmlPiFunctionSegment.getIdentifier()
+ ? new
XmlPiFunctionSegment(xmlPiFunctionSegment.getStartIndex(),
xmlPiFunctionSegment.getStopIndex(),
+ xmlPiFunctionSegment.getFunctionName(),
xmlPiFunctionSegment.getEvalNameValueExpr(),
xmlPiFunctionSegment.getValueExpr(), xmlPiFunctionSegment.getText())
+ : new
XmlPiFunctionSegment(xmlPiFunctionSegment.getStartIndex(),
xmlPiFunctionSegment.getStopIndex(),
+ xmlPiFunctionSegment.getFunctionName(),
xmlPiFunctionSegment.getIdentifier(), xmlPiFunctionSegment.getValueExpr(),
xmlPiFunctionSegment.getText());
}
if (projection instanceof XmlSerializeFunctionSegment) {
XmlSerializeFunctionSegment xmlSerializeFunctionSegment =
(XmlSerializeFunctionSegment) projection;
@@ -755,7 +754,8 @@ public final class OracleDMLStatementVisitor extends
OracleStatementVisitor impl
xmlSerializeFunctionSegment.getIdentSize(),
xmlSerializeFunctionSegment.getText());
}
LiteralExpressionSegment column = (LiteralExpressionSegment)
projection;
- ExpressionProjectionSegment result = null == alias ? new
ExpressionProjectionSegment(column.getStartIndex(), column.getStopIndex(),
String.valueOf(column.getLiterals()), column)
+ ExpressionProjectionSegment result = null == alias
+ ? new ExpressionProjectionSegment(column.getStartIndex(),
column.getStopIndex(), String.valueOf(column.getLiterals()), column)
: new ExpressionProjectionSegment(column.getStartIndex(),
ctx.alias().stop.getStopIndex(), String.valueOf(column.getLiterals()), column);
result.setAlias(alias);
return result;
diff --git
a/parser/sql/dialect/postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/type/PostgreSQLDDLStatementVisitor.java
b/parser/sql/dialect/postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/type/PostgreSQLDDLStatementVisitor.java
index 5e37d1679cf..541fa851f86 100644
---
a/parser/sql/dialect/postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/type/PostgreSQLDDLStatementVisitor.java
+++
b/parser/sql/dialect/postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/type/PostgreSQLDDLStatementVisitor.java
@@ -407,35 +407,11 @@ public final class PostgreSQLDDLStatementVisitor extends
PostgreSQLStatementVisi
return new PostgreSQLAlterForeignDataWrapperStatement();
}
- @SuppressWarnings("unchecked")
@Override
public ASTNode visitAlterDefinitionClause(final
AlterDefinitionClauseContext ctx) {
CollectionValue<AlterDefinitionSegment> result = new
CollectionValue<>();
if (null != ctx.alterTableActions()) {
- for (AlterTableActionContext each :
ctx.alterTableActions().alterTableAction()) {
- AddColumnSpecificationContext addColumnSpecification =
each.addColumnSpecification();
- if (null != addColumnSpecification) {
-
result.getValue().addAll(((CollectionValue<AddColumnDefinitionSegment>)
visit(addColumnSpecification)).getValue());
- }
- if (null != each.addConstraintSpecification() && null !=
each.addConstraintSpecification().tableConstraint()) {
- result.getValue().add((AddConstraintDefinitionSegment)
visit(each.addConstraintSpecification()));
- }
- if (null != each.validateConstraintSpecification()) {
-
result.getValue().add((ValidateConstraintDefinitionSegment)
visit(each.validateConstraintSpecification()));
- }
- if (null != each.modifyColumnSpecification()) {
- result.getValue().add((ModifyColumnDefinitionSegment)
visit(each.modifyColumnSpecification()));
- }
- if (null != each.modifyConstraintSpecification()) {
- result.getValue().add((ModifyConstraintDefinitionSegment)
visit(each.modifyConstraintSpecification()));
- }
- if (null != each.dropColumnSpecification()) {
- result.getValue().add((DropColumnDefinitionSegment)
visit(each.dropColumnSpecification()));
- }
- if (null != each.dropConstraintSpecification()) {
- result.getValue().add((DropConstraintDefinitionSegment)
visit(each.dropConstraintSpecification()));
- }
- }
+ result.getValue().addAll(getAlterDefinitionSegments(ctx));
}
if (null != ctx.renameTableSpecification()) {
result.getValue().add((RenameTableDefinitionSegment)
visit(ctx.renameTableSpecification()));
@@ -443,6 +419,35 @@ public final class PostgreSQLDDLStatementVisitor extends
PostgreSQLStatementVisi
return result;
}
+ @SuppressWarnings("unchecked")
+ private Collection<AlterDefinitionSegment>
getAlterDefinitionSegments(final AlterDefinitionClauseContext ctx) {
+ Collection<AlterDefinitionSegment> result = new LinkedList<>();
+ for (AlterTableActionContext each :
ctx.alterTableActions().alterTableAction()) {
+ if (null != each.addColumnSpecification()) {
+ result.addAll(((CollectionValue<AddColumnDefinitionSegment>)
visit(each.addColumnSpecification())).getValue());
+ }
+ if (null != each.addConstraintSpecification() && null !=
each.addConstraintSpecification().tableConstraint()) {
+ result.add((AddConstraintDefinitionSegment)
visit(each.addConstraintSpecification()));
+ }
+ if (null != each.validateConstraintSpecification()) {
+ result.add((ValidateConstraintDefinitionSegment)
visit(each.validateConstraintSpecification()));
+ }
+ if (null != each.modifyColumnSpecification()) {
+ result.add((ModifyColumnDefinitionSegment)
visit(each.modifyColumnSpecification()));
+ }
+ if (null != each.modifyConstraintSpecification()) {
+ result.add((ModifyConstraintDefinitionSegment)
visit(each.modifyConstraintSpecification()));
+ }
+ if (null != each.dropColumnSpecification()) {
+ result.add((DropColumnDefinitionSegment)
visit(each.dropColumnSpecification()));
+ }
+ if (null != each.dropConstraintSpecification()) {
+ result.add((DropConstraintDefinitionSegment)
visit(each.dropConstraintSpecification()));
+ }
+ }
+ return result;
+ }
+
@Override
public ASTNode visitAlterForeignTable(final AlterForeignTableContext ctx) {
return new PostgreSQLAlterForeignTableStatement();
@@ -833,6 +838,7 @@ public final class PostgreSQLDDLStatementVisitor extends
PostgreSQLStatementVisi
return result;
}
+ @SuppressWarnings({"unchecked", "rawtypes"})
@Override
public ASTNode visitDropSequence(final DropSequenceContext ctx) {
PostgreSQLDropSequenceStatement result = new
PostgreSQLDropSequenceStatement();