package jef.database.jsqlparser.statement.select; import jef.database.jsqlparser.visitor.Expression; import jef.database.jsqlparser.visitor.ExpressionType; import jef.database.jsqlparser.visitor.ExpressionVisitor; public class StartWithExpression implements Expression{ private Expression startExpression; private Expression connectExpression; public StartWithExpression(Expression stExpression,Expression connectBy){ this.startExpression=stExpression; this.connectExpression=connectBy; } public void accept(ExpressionVisitor expressionVisitor) { expressionVisitor.visit(this); } @Override public String toString() { StringBuilder sb=new StringBuilder(128); appendTo(sb); return sb.toString(); } public void appendTo(StringBuilder sb) { if(startExpression==null)return; sb.append(" START WITH "); startExpression.appendTo(sb); if(connectExpression!=null){ sb.append(" CONNECT BY "); connectExpression.appendTo(sb); } } public Expression getStartExpression() { return startExpression; } public Expression getConnectExpression() { return connectExpression; } public void setStartExpression(Expression startExpression) { this.startExpression = startExpression; } public void setConnectExpression(Expression connectExpression) { this.connectExpression = connectExpression; } public ExpressionType getType() { return ExpressionType.complex; } }