001package gudusoft.gsqlparser.nodes.hive;
002/*
003 * Date: 13-8-2
004 */
005
006import gudusoft.gsqlparser.nodes.TObjectName;
007import gudusoft.gsqlparser.nodes.TParseTreeNode;
008import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
009
010public class THiveVariable extends TParseTreeNode {
011    private TObjectName varName;
012    private TObjectName varProperty;
013    private THiveVariable nestedVar;
014
015    public THiveVariable getNestedVar() {
016        return nestedVar;
017    }
018
019    public TObjectName getVarName() {
020        return varName;
021    }
022
023    public TObjectName getVarProperty() {
024        return varProperty;
025    }
026
027    public void init(Object arg1,Object arg2){
028        varName = (TObjectName)arg1;
029        if(arg2 instanceof TObjectName){
030
031            varProperty = (TObjectName)arg2;
032        }else if (arg2 instanceof THiveVariable){
033            nestedVar = (THiveVariable)arg2;
034        }
035    }
036    public void accept(TParseTreeVisitor v){
037        v.preVisit(this);
038        v.postVisit(this);
039    }
040
041    public void acceptChildren(TParseTreeVisitor v){
042        v.preVisit(this);
043        v.postVisit(this);
044    }
045
046    public void setVarName(TObjectName varName) {
047        this.varName = varName;
048    }
049
050    public void setVarProperty(TObjectName varProperty) {
051        this.varProperty = varProperty;
052    }
053
054    public void setNestedVar(THiveVariable nestedVar) {
055        this.nestedVar = nestedVar;
056    }
057}