001package gudusoft.gsqlparser.stmt.redshift;
002
003import gudusoft.gsqlparser.EDbVendor;
004import gudusoft.gsqlparser.ESqlStatementType;
005import gudusoft.gsqlparser.TCustomSqlStatement;
006import gudusoft.gsqlparser.nodes.TDummy;
007import gudusoft.gsqlparser.nodes.TObjectName;
008import gudusoft.gsqlparser.nodes.TObjectNameList;
009import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
010
011public class TRedshiftAnalyze extends TCustomSqlStatement {
012
013    private TObjectName tableName;
014    private TObjectNameList columnList;
015
016    public TObjectName getTableName() {
017        return tableName;
018    }
019
020    public TObjectNameList getColumnList() {
021        return columnList;
022    }
023
024    public TRedshiftAnalyze(EDbVendor dbvendor) {
025        super(dbvendor);
026        sqlstatementtype = ESqlStatementType.sstredshiftAnalyze;
027    }
028
029    public int doParseStatement(TCustomSqlStatement psql) {
030        if (rootNode == null) return -1;
031        super.doParseStatement(psql);
032        TDummy dummy = (TDummy)rootNode;
033        tableName = (TObjectName)dummy.node1;
034        columnList = (TObjectNameList)dummy.list1;
035
036        return 0;
037    }
038
039    public void accept(TParseTreeVisitor v){
040        v.preVisit(this);
041        v.postVisit(this);
042    }
043
044    public void acceptChildren(TParseTreeVisitor v){
045        v.preVisit(this);
046        v.postVisit(this);
047    }
048
049    public void setTableName(TObjectName tableName) {
050        this.tableName = tableName;
051    }
052
053    public void setColumnList(TObjectNameList columnList) {
054        this.columnList = columnList;
055    }
056}