001package gudusoft.gsqlparser.nodes;
002
003/**
004 * AST node for StarRocks SHOW ROUTINE LOAD statement.
005 *
006 * Syntax:
007 * SHOW [ALL] ROUTINE LOAD [ FOR [db_name.]job_name | FROM db_name ]
008 * [ WHERE [ STATE = { "NEED_SCHEDULE" | "RUNNING" | "PAUSED" | "UNSTABLE" | "STOPPED" | "CANCELLED" } ] ]
009 * [ ORDER BY field_name [ ASC | DESC ] ]
010 * [ LIMIT { [offset, ] limit | limit OFFSET offset } ]
011 */
012public class TShowRoutineLoadSqlNode extends TParseTreeNode {
013
014    private boolean showAll;
015    private TObjectName jobName;       // For: FOR [db_name.]job_name
016    private TObjectName databaseName;  // For: FROM db_name
017    private TExpression whereClause;
018    private TOrderBy orderBy;
019    private TLimitClause limitClause;
020
021    public boolean isShowAll() {
022        return showAll;
023    }
024
025    public void setShowAll(boolean showAll) {
026        this.showAll = showAll;
027    }
028
029    public TObjectName getJobName() {
030        return jobName;
031    }
032
033    public void setJobName(TObjectName jobName) {
034        this.jobName = jobName;
035    }
036
037    public TObjectName getDatabaseName() {
038        return databaseName;
039    }
040
041    public void setDatabaseName(TObjectName databaseName) {
042        this.databaseName = databaseName;
043    }
044
045    public TExpression getWhereClause() {
046        return whereClause;
047    }
048
049    public void setWhereClause(TExpression whereClause) {
050        this.whereClause = whereClause;
051    }
052
053    public TOrderBy getOrderBy() {
054        return orderBy;
055    }
056
057    public void setOrderBy(TOrderBy orderBy) {
058        this.orderBy = orderBy;
059    }
060
061    public TLimitClause getLimitClause() {
062        return limitClause;
063    }
064
065    public void setLimitClause(TLimitClause limitClause) {
066        this.limitClause = limitClause;
067    }
068
069    public void init(Object showAll) {
070        this.showAll = (Boolean) showAll;
071    }
072}