001package gudusoft.gsqlparser.nodes;
002
003/**
004 * Hive, Impala, MySQL, Oracle partition clause in from table
005 */
006public class TPartitionExtensionClause extends TParseTreeNode {
007    private TObjectName partitionName;
008    private TExpressionList keyValues;
009    private TObjectNameList partitoinNames = null;
010    private TObjectName partitionLocation;
011
012    public TObjectName getPartitionLocation() {
013        return partitionLocation;
014    }
015
016    public TObjectNameList getPartitoinNames() {
017        return partitoinNames;
018    }
019
020
021    public TExpressionList getKeyValues() {
022        return keyValues;
023    }
024
025    public TObjectName getPartitionName() {
026        return partitionName;
027    }
028
029    public void init(Object arg1){
030        if (arg1 instanceof TObjectName){
031            partitionName = (TObjectName)arg1;
032        }else if (arg1 instanceof TExpressionList){
033            keyValues = (TExpressionList)arg1;
034        }else if (arg1 instanceof TObjectNameList){
035            partitoinNames = (TObjectNameList)arg1;
036        }
037    }
038
039    public void init(Object arg1,Object arg2){
040        init(arg1);
041        this.partitionLocation = (TObjectName)arg2;
042    }
043
044    public void setPartitionName(TObjectName partitionName) {
045        this.partitionName = partitionName;
046    }
047
048    public void setKeyValues(TExpressionList keyValues) {
049        this.keyValues = keyValues;
050    }
051    public void accept(TParseTreeVisitor v){
052        v.preVisit(this);
053        v.postVisit(this);
054    }
055
056    public void acceptChildren(TParseTreeVisitor v){
057        v.preVisit(this);
058        v.postVisit(this);
059    }
060}