001package gudusoft.gsqlparser.stmt;
002
003import gudusoft.gsqlparser.EDbVendor;
004import gudusoft.gsqlparser.ESqlStatementType;
005import gudusoft.gsqlparser.TVisitorAbs;
006import gudusoft.gsqlparser.TCustomSqlStatement;
007import gudusoft.gsqlparser.nodes.TAlterSessionSqlNode;
008import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
009
010/**
011 * alter session statement
012 */
013public class TAlterSessionStatement extends TCustomSqlStatement {
014    private AlterSessionType type = AlterSessionType.SET;
015
016    public AlterSessionType getType() {
017        return type;
018    }
019
020    public enum AlterSessionType {
021        SET,
022        UNSET
023    }
024
025    public TAlterSessionStatement(EDbVendor dbvendor) {
026        super(dbvendor);
027        sqlstatementtype = ESqlStatementType.sstaltersession;
028    }
029
030    void buildsql() {
031    }
032
033    void clear() {
034    }
035
036    String getasprettytext() {
037        return "";
038    }
039
040    void iterate(TVisitorAbs pvisitor) {
041    }
042
043    public int doParseStatement(TCustomSqlStatement psql) {
044        if (rootNode == null) return -1;
045        super.doParseStatement(psql);
046        if (!(rootNode instanceof TAlterSessionSqlNode)) return 0;
047
048        TAlterSessionSqlNode alterSessionSqlNode = (TAlterSessionSqlNode) rootNode;
049        type = alterSessionSqlNode.getType();
050
051
052        return 0;
053    }
054
055    public void accept(TParseTreeVisitor v){
056        v.preVisit(this);
057        v.postVisit(this);
058    }
059
060    public void acceptChildren(TParseTreeVisitor v){
061        v.preVisit(this);
062        v.postVisit(this);
063    }
064
065}