001package gudusoft.gsqlparser.stmt.hive;
002
003import gudusoft.gsqlparser.EDbVendor;
004import gudusoft.gsqlparser.ESqlClause;
005import gudusoft.gsqlparser.ESqlStatementType;
006import gudusoft.gsqlparser.TCustomSqlStatement;
007import gudusoft.gsqlparser.nodes.*;
008
009
010public class THiveSet extends TCustomSqlStatement {
011
012//    private TObjectName parameterName;
013//    private TExpression parameterValue;
014//
015//    public TObjectName getParameterName() {
016//        return parameterName;
017//    }
018//
019//    public TExpression getParameterValue() {
020//        return parameterValue;
021//    }
022
023    TExpression expr;
024    public THiveSet(EDbVendor dbvendor) {
025        super(dbvendor);
026        sqlstatementtype = ESqlStatementType.ssthiveSet;
027    }
028
029    public TExpression getExpr() {
030        return expr;
031    }
032
033    public int doParseStatement(TCustomSqlStatement psql) {
034        if (rootNode == null) return -1;
035        super.doParseStatement(psql);
036        TSetSqlNode node = (TSetSqlNode)rootNode;
037
038        if (node.getAssignments() != null && node.getAssignments().size() > 0) {
039            expr = node.getAssignments().getElement(0).getExpression();
040        }
041
042        return 0;
043    }
044
045    public void accept(TParseTreeVisitor v){
046        v.preVisit(this);
047        v.postVisit(this);
048    }
049
050    public void acceptChildren(TParseTreeVisitor v){
051        v.preVisit(this);
052        if (expr != null) expr.accept(v);
053        v.postVisit(this);
054    }
055
056    public void setExpr(TExpression expr) {
057        this.expr = expr;
058    }
059}