@@ -405,26 +405,14 @@ public <S> Void visit(PlainSelect plainSelect, S context) {
405405 }
406406
407407 private <S > Void visitPlainSelectBody (PlainSelect plainSelect , S context ) {
408- List <WithItem <?>> withItemsList = plainSelect .getWithItemsList ();
409- if (withItemsList != null && !withItemsList .isEmpty ()) {
410- for (WithItem <?> withItem : withItemsList ) {
411- withItem .accept ((SelectVisitor <?>) this , context );
412- }
413- }
408+ visitWithItems (plainSelect .getWithItemsList (), context );
414409 if (plainSelect .getDistinct () != null ) {
415410 visitSelectItems (plainSelect .getDistinct ().getOnSelectItems (), context );
416411 }
417412 visitTables (plainSelect .getIntoTables (), context );
418413
419- if (plainSelect .getSelectItems () != null ) {
420- for (SelectItem <?> item : plainSelect .getSelectItems ()) {
421- item .accept (this , context );
422- }
423- }
424-
425- if (plainSelect .getFromItem () != null ) {
426- plainSelect .getFromItem ().accept (this , context );
427- }
414+ visitSelectItems (plainSelect .getSelectItems (), context );
415+ visitFromItem (plainSelect .getFromItem (), context );
428416
429417 if (plainSelect .getLateralViews () != null ) {
430418 for (LateralView lateralView : plainSelect .getLateralViews ()) {
@@ -433,27 +421,17 @@ private <S> Void visitPlainSelectBody(PlainSelect plainSelect, S context) {
433421 }
434422
435423 visitJoins (plainSelect .getJoins (), context );
436- if (plainSelect .getPreWhere () != null ) {
437- plainSelect .getPreWhere ().accept (this , context );
438- }
439- if (plainSelect .getWhere () != null ) {
440- plainSelect .getWhere ().accept (this , context );
441- }
424+ visitExpression (plainSelect .getPreWhere (), context );
425+ visitExpression (plainSelect .getWhere (), context );
442426
443427 visitPreferringClause (plainSelect .getPreferringClause (), context );
444428 visit (plainSelect .getGroupBy (), context );
445429
446- if (plainSelect .getHaving () != null ) {
447- plainSelect .getHaving ().accept (this , context );
448- }
430+ visitExpression (plainSelect .getHaving (), context );
449431
450- if (plainSelect .getQualify () != null ) {
451- plainSelect .getQualify ().accept (this , context );
452- }
432+ visitExpression (plainSelect .getQualify (), context );
453433
454- if (plainSelect .getOracleHierarchical () != null ) {
455- plainSelect .getOracleHierarchical ().accept (this , context );
456- }
434+ visitExpression (plainSelect .getOracleHierarchical (), context );
457435
458436 if (plainSelect .getWindowDefinitions () != null ) {
459437 for (WindowDefinition windowDefinition : plainSelect .getWindowDefinitions ()) {
@@ -472,12 +450,7 @@ private <S> Void visitPlainSelectBody(PlainSelect plainSelect, S context) {
472450 visitOrderBy (plainSelect .getOrderByElements (), context );
473451 visitLimit (plainSelect .getLimit (), context );
474452 visitLimit (plainSelect .getLimitBy (), context );
475- if (plainSelect .getOffset () != null ) {
476- plainSelect .getOffset ().getOffset ().accept (this , context );
477- }
478- if (plainSelect .getFetch () != null ) {
479- plainSelect .getFetch ().getExpression ().accept (this , context );
480- }
453+ visitSelectPagination (plainSelect , context );
481454 visitUpdateSets (plainSelect .getSettings (), context );
482455 visitFromItem (plainSelect .getIntoTempTable (), context );
483456 return null ;
@@ -493,7 +466,7 @@ public <S> Void visit(PivotQuery pivotQuery, S context) {
493466 visitOrderBy (pivotQuery .getOrderByElements (), context );
494467 visitLimit (pivotQuery .getLimit (), context );
495468
496- visitPivotPagination (pivotQuery , context );
469+ visitSelectPagination (pivotQuery , context );
497470 return null ;
498471 }
499472
@@ -505,12 +478,12 @@ private <S> void visitSelectItems(List<? extends SelectItem<?>> selectItems, S c
505478 }
506479 }
507480
508- private <S > void visitPivotPagination ( PivotQuery pivotQuery , S context ) {
509- if (pivotQuery .getOffset () != null ) {
510- pivotQuery .getOffset ().getOffset ().accept (this , context );
481+ private <S > void visitSelectPagination ( Select select , S context ) {
482+ if (select .getOffset () != null ) {
483+ select .getOffset ().getOffset ().accept (this , context );
511484 }
512- if (pivotQuery .getFetch () != null && pivotQuery .getFetch ().getExpression () != null ) {
513- pivotQuery .getFetch ().getExpression ().accept (this , context );
485+ if (select .getFetch () != null && select .getFetch ().getExpression () != null ) {
486+ select .getFetch ().getExpression ().accept (this , context );
514487 }
515488 }
516489
0 commit comments