001package gudusoft.gsqlparser.stmt.mssql; 002 003import gudusoft.gsqlparser.*; 004import gudusoft.gsqlparser.nodes.TDummy; 005import gudusoft.gsqlparser.nodes.TObjectName; 006import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 007 008public class TMssqlRollback extends TCustomSqlStatement { 009 public TMssqlRollback (EDbVendor dbvendor){ 010 super(dbvendor); 011 sqlstatementtype = ESqlStatementType.sstmssqlrollback ; 012 } 013 014 public TObjectName getTransactionName() { 015 return transactionName; 016 } 017 018 void buildsql() { 019 } 020 021 void clear() { 022 } 023 024 String getasprettytext() { 025 return ""; 026 } 027 028 void iterate(TVisitorAbs pvisitor) { 029 } 030 031 private TObjectName transactionName = null; 032 private TSourceToken trans_or_work = null; 033 034 public TSourceToken getTrans_or_work() { 035 return trans_or_work; 036 } 037 038 public int doParseStatement(TCustomSqlStatement psql) { 039 if (rootNode == null) return -1; 040 TDummy dummySqlNode = (TDummy)rootNode; 041 042 super.doParseStatement(psql); 043 this.transactionName = (TObjectName)dummySqlNode.node1; 044 if (this.transactionName != null){ 045 //this.transactionName.setObjectType(TObjectName.ttobjTransactionName); 046 this.transactionName.setDbObjectType(EDbObjectType.transaction); 047 } 048 this.trans_or_work = dummySqlNode.st1; 049 050 return 0; 051 } 052 053 public void accept(TParseTreeVisitor v){ 054 v.preVisit(this); 055 v.postVisit(this); 056 } 057 058 public void acceptChildren(TParseTreeVisitor v){ 059 v.preVisit(this); 060 v.postVisit(this); 061 } 062 063 public void setTransactionName(TObjectName transactionName) { 064 this.transactionName = transactionName; 065 } 066}