001package gudusoft.gsqlparser.stmt.redshift;
002
003import gudusoft.gsqlparser.EDbVendor;
004import gudusoft.gsqlparser.ESqlStatementType;
005import gudusoft.gsqlparser.TCustomSqlStatement;
006import gudusoft.gsqlparser.nodes.TAuthorizationClause;
007import gudusoft.gsqlparser.nodes.TDummy;
008import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
009
010/**
011 * @deprecated since version 2.5.9.1, use {@link gudusoft.gsqlparser.stmt.TUnloadStmt} instead.
012 */
013public class TRedshiftUnload extends TCustomSqlStatement {
014
015    private String selectStmt;
016    private String s3;
017    private TAuthorizationClause authorizationClause;
018
019    public String getSelectStmt() {
020        return selectStmt;
021    }
022
023    public String getS3() {
024        return s3;
025    }
026
027    public TAuthorizationClause getAuthorizationClause() {
028        return authorizationClause;
029    }
030
031    public TRedshiftUnload(EDbVendor dbvendor) {
032        super(dbvendor);
033        sqlstatementtype = ESqlStatementType.sstredshiftUnload;
034    }
035
036    public int doParseStatement(TCustomSqlStatement psql) {
037        if (rootNode == null) return -1;
038        super.doParseStatement(psql);
039        TDummy dummy = (TDummy)rootNode;
040        selectStmt = dummy.st1.toString();
041        s3 = dummy.st2.toString();
042        authorizationClause = (TAuthorizationClause)dummy.node1;
043
044        return 0;
045    }
046    public void accept(TParseTreeVisitor v){
047        v.preVisit(this);
048        v.postVisit(this);
049    }
050    public void acceptChildren(TParseTreeVisitor v){
051        v.preVisit(this);
052        v.postVisit(this);
053    }
054
055    public void setSelectStmt(String selectStmt) {
056        this.selectStmt = selectStmt;
057    }
058
059    public void setS3(String s3) {
060        this.s3 = s3;
061    }
062
063    public void setAuthorizationClause(TAuthorizationClause authorizationClause) {
064        this.authorizationClause = authorizationClause;
065    }
066}