Skip to content

Commit edfdc4c

Browse files
committed
Merge origin/master
2 parents 456d53b + 0e1ff56 commit edfdc4c

File tree

411 files changed

+8383
-5555
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

411 files changed

+8383
-5555
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Assertions.assertEquals("b", b.getColumnName());
4646
}
4747
```
4848

49-
JSQLParser-4.9 is the last JDK8 compatible version and any future development will depend on JDK11.
49+
JSQLParser-4.9 is the last JDK8 compatible version. The upcoming JSQLParser-5.0 will depend on JDK11 and introduces API breaking changes to the AST Visitors. Please see the Migration Guide for the details.
5050

5151
## [Supported Grammar and Syntax](https://jsqlparser.github.io/JSqlParser/syntax.html)
5252

build.gradle

+3-2
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ jacocoTestCoverageVerification {
226226
//element = 'CLASS'
227227
limit {
228228
//@todo: temporarily reduced it 80%, we need to bring that back to 84% accepting the Keywords PR
229-
minimum = 0.80
229+
minimum = 0.50
230230
}
231231
excludes = [
232232
'net.sf.jsqlparser.util.validation.*',
@@ -241,7 +241,7 @@ jacocoTestCoverageVerification {
241241
value = 'MISSEDCOUNT'
242242

243243
//@todo: temporarily increased to 7000, we need to bring that down to 5500 after accepting the Keywords PR
244-
maximum = 7000
244+
maximum = 20000
245245
}
246246
excludes = [
247247
'net.sf.jsqlparser.util.validation.*',
@@ -605,5 +605,6 @@ tasks.register('upload') {
605605
}
606606
}
607607
}
608+
check.dependsOn jacocoTestCoverageVerification
608609
upload.dependsOn(check, assemble, gitChangelogTask, renderRR, xslt, xmldoc)
609610

src/main/java/module-info.java

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
*/
1010
module net.sf.jsqlparser {
1111
requires java.sql;
12+
requires java.desktop;
1213

1314
exports net.sf.jsqlparser;
1415
exports net.sf.jsqlparser.expression;

src/main/java/net/sf/jsqlparser/Model.java

+6-2
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,12 @@
1212
import java.io.Serializable;
1313

1414
/**
15-
* <p>A marker interface for jsqlparser-model-classes.</p>
16-
* <p>The datastructure where the sql syntax is represented by a tree consists of {@link Model}'s</p>
15+
* <p>
16+
* A marker interface for jsqlparser-model-classes.
17+
* </p>
18+
* <p>
19+
* The datastructure where the sql syntax is represented by a tree consists of {@link Model}'s
20+
* </p>
1721
*/
1822
public interface Model extends Serializable {
1923

src/main/java/net/sf/jsqlparser/expression/Alias.java

+9-6
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import java.util.List;
1717
import java.util.Objects;
1818
import java.util.Optional;
19+
1920
import net.sf.jsqlparser.statement.create.table.ColDataType;
2021

2122
public class Alias implements Serializable {
@@ -62,14 +63,14 @@ public String toString() {
6263
String alias = (useAs ? " AS " : " ") + name;
6364

6465
if (aliasColumns != null && !aliasColumns.isEmpty()) {
65-
String ac = "";
66+
StringBuilder ac = new StringBuilder();
6667
for (AliasColumn col : aliasColumns) {
6768
if (ac.length() > 0) {
68-
ac += ", ";
69+
ac.append(", ");
6970
}
70-
ac += col.name;
71+
ac.append(col.name);
7172
if (col.colDataType != null) {
72-
ac += " " + col.colDataType.toString();
73+
ac.append(" ").append(col.colDataType.toString());
7374
}
7475
}
7576
alias += "(" + ac + ")";
@@ -94,13 +95,15 @@ public Alias withAliasColumns(List<AliasColumn> aliasColumns) {
9495
}
9596

9697
public Alias addAliasColumns(AliasColumn... aliasColumns) {
97-
List<AliasColumn> collection = Optional.ofNullable(getAliasColumns()).orElseGet(ArrayList::new);
98+
List<AliasColumn> collection =
99+
Optional.ofNullable(getAliasColumns()).orElseGet(ArrayList::new);
98100
Collections.addAll(collection, aliasColumns);
99101
return this.withAliasColumns(collection);
100102
}
101103

102104
public Alias addAliasColumns(Collection<? extends AliasColumn> aliasColumns) {
103-
List<AliasColumn> collection = Optional.ofNullable(getAliasColumns()).orElseGet(ArrayList::new);
105+
List<AliasColumn> collection =
106+
Optional.ofNullable(getAliasColumns()).orElseGet(ArrayList::new);
104107
collection.addAll(aliasColumns);
105108
return this.withAliasColumns(collection);
106109
}

src/main/java/net/sf/jsqlparser/expression/AllValue.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414
public class AllValue extends ASTNodeAccessImpl implements Expression {
1515

1616
@Override
17-
public void accept(ExpressionVisitor expressionVisitor) {
18-
expressionVisitor.visit(this);
17+
public <T, S> T accept(ExpressionVisitor<T> expressionVisitor, S context) {
18+
return expressionVisitor.visit(this, context);
1919
}
2020

2121
@Override

src/main/java/net/sf/jsqlparser/expression/AnalyticExpression.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ public class AnalyticExpression extends ASTNodeAccessImpl implements Expression
4141
private Expression filterExpression = null;
4242
private List<OrderByElement> funcOrderBy = null;
4343
private String windowName = null; // refers to an external window definition (paritionBy,
44-
// orderBy, windowElement)
44+
// orderBy, windowElement)
4545
private WindowDefinition windowDef = new WindowDefinition();
4646

4747
private Function.HavingClause havingClause;
@@ -84,8 +84,8 @@ public AnalyticExpression(Function function) {
8484

8585

8686
@Override
87-
public void accept(ExpressionVisitor expressionVisitor) {
88-
expressionVisitor.visit(this);
87+
public <T, S> T accept(ExpressionVisitor<T> expressionVisitor, S context) {
88+
return expressionVisitor.visit(this, context);
8989
}
9090

9191
public List<OrderByElement> getOrderByElements() {

src/main/java/net/sf/jsqlparser/expression/AnyComparisonExpression.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ public Select getSelect() {
3232

3333

3434
@Override
35-
public void accept(ExpressionVisitor expressionVisitor) {
36-
expressionVisitor.visit(this);
35+
public <T, S> T accept(ExpressionVisitor<T> expressionVisitor, S context) {
36+
return expressionVisitor.visit(this, context);
3737
}
3838

3939
public AnyType getAnyType() {

src/main/java/net/sf/jsqlparser/expression/ArrayConstructor.java

+11-11
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,15 @@ public class ArrayConstructor extends ASTNodeAccessImpl implements Expression {
1616
private ExpressionList<?> expressions;
1717
private boolean arrayKeyword;
1818

19+
public ArrayConstructor(ExpressionList<?> expressions, boolean arrayKeyword) {
20+
this.expressions = expressions;
21+
this.arrayKeyword = arrayKeyword;
22+
}
23+
24+
public ArrayConstructor(Expression... expressions) {
25+
this(new ExpressionList<Expression>(expressions), false);
26+
}
27+
1928
public ExpressionList<?> getExpressions() {
2029
return expressions;
2130
}
@@ -32,18 +41,9 @@ public void setArrayKeyword(boolean arrayKeyword) {
3241
this.arrayKeyword = arrayKeyword;
3342
}
3443

35-
public ArrayConstructor(ExpressionList<?> expressions, boolean arrayKeyword) {
36-
this.expressions = expressions;
37-
this.arrayKeyword = arrayKeyword;
38-
}
39-
40-
public ArrayConstructor(Expression... expressions) {
41-
this(new ExpressionList<Expression>(expressions), false);
42-
}
43-
4444
@Override
45-
public void accept(ExpressionVisitor expressionVisitor) {
46-
expressionVisitor.visit(this);
45+
public <T, S> T accept(ExpressionVisitor<T> expressionVisitor, S context) {
46+
return expressionVisitor.visit(this, context);
4747
}
4848

4949
@Override

src/main/java/net/sf/jsqlparser/expression/ArrayExpression.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,8 @@ public void setStopIndexExpression(Expression stopIndexExpression) {
7373
}
7474

7575
@Override
76-
public void accept(ExpressionVisitor expressionVisitor) {
77-
expressionVisitor.visit(this);
76+
public <T, S> T accept(ExpressionVisitor<T> expressionVisitor, S context) {
77+
return expressionVisitor.visit(this, context);
7878
}
7979

8080
@Override

src/main/java/net/sf/jsqlparser/expression/BinaryExpression.java

+8-8
Original file line numberDiff line numberDiff line change
@@ -226,28 +226,28 @@ public Expression getLeftExpression() {
226226
return leftExpression;
227227
}
228228

229+
public void setLeftExpression(Expression expression) {
230+
leftExpression = expression;
231+
}
232+
229233
public Expression getRightExpression() {
230234
return rightExpression;
231235
}
232236

237+
public void setRightExpression(Expression expression) {
238+
rightExpression = expression;
239+
}
240+
233241
public BinaryExpression withLeftExpression(Expression expression) {
234242
setLeftExpression(expression);
235243
return this;
236244
}
237245

238-
public void setLeftExpression(Expression expression) {
239-
leftExpression = expression;
240-
}
241-
242246
public BinaryExpression withRightExpression(Expression expression) {
243247
setRightExpression(expression);
244248
return this;
245249
}
246250

247-
public void setRightExpression(Expression expression) {
248-
rightExpression = expression;
249-
}
250-
251251
@Override
252252
public String toString() {
253253
return // (not ? "NOT " : "") +

src/main/java/net/sf/jsqlparser/expression/CaseExpression.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,15 @@
1515
import java.util.Collections;
1616
import java.util.List;
1717
import java.util.Optional;
18+
1819
import net.sf.jsqlparser.parser.ASTNodeAccessImpl;
1920
import net.sf.jsqlparser.statement.select.PlainSelect;
2021

2122
/**
2223
* CASE/WHEN expression.
23-
*
24+
* <p>
2425
* Syntax:
25-
*
26+
*
2627
* <pre>
2728
* <code>
2829
* CASE
@@ -46,7 +47,6 @@
4647
* END
4748
* </code>
4849
* </pre>
49-
*
5050
*/
5151
public class CaseExpression extends ASTNodeAccessImpl implements Expression {
5252

@@ -68,8 +68,8 @@ public CaseExpression(Expression elseExpression, WhenClause... whenClauses) {
6868

6969

7070
@Override
71-
public void accept(ExpressionVisitor expressionVisitor) {
72-
expressionVisitor.visit(this);
71+
public <T, S> T accept(ExpressionVisitor<T> expressionVisitor, S context) {
72+
return expressionVisitor.visit(this, context);
7373
}
7474

7575
public Expression getSwitchExpression() {

0 commit comments

Comments
 (0)