00001 // $Header: /bes/bes/BossCvs/Calibration/rdbModel/src/Tables/InsertNew.cxx,v 1.1.1.1 2005/10/17 06:10:53 maqm Exp $ 00002 00003 #include "rdbModel/Tables/Query.h" 00004 #include "rdbModel/Tables/InsertNew.h" 00005 #include "rdbModel/Tables/InterRow.h" 00006 #include "rdbModel/RdbException.h" 00007 00008 namespace rdbModel { 00009 00010 InsertNew::~InsertNew() { 00011 while (m_interRow.size() ) { 00012 InterRow* i = m_interRow.back(); 00013 m_interRow.pop_back(); 00014 delete i; 00015 } 00016 } 00017 // Pass the buck to InterRow 00018 Visitor::VisitorState InsertNew::accept(Visitor* v) { 00019 Visitor::VisitorState state = v->visitInsertNew(this); 00020 if (state == Visitor::VBRANCHDONE) return Visitor::VCONTINUE; 00021 00022 unsigned n = m_interRow.size(); 00023 for (unsigned i = 0; i < n; i++) { 00024 state = m_interRow[i]->accept(v); 00025 if (state != Visitor::VCONTINUE) return state; 00026 } 00027 return state; 00028 } 00029 }