Salome HOME
add method NameChanged to update title name
[modules/kernel.git] / src / SALOMESDS / SALOMESDS_Transaction.cxx
index 6b4577cfab09fb0fce42bba60d7359ef88971273..6d85116f9fee64520fb26b862f522f7738202668 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2015  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -101,6 +101,39 @@ void TransactionRdWrVarCreate::perform()
   _dsct->createRdWrVarInternal(_var_name,data2);
 }
 
+TransactionKillVar::TransactionKillVar(DataScopeServerTransaction *dsct, const std::string& varName):Transaction(dsct,varName)
+{
+}
+
+/*!
+ * TODO
+ */
+void TransactionKillVar::prepareRollBackInCaseOfFailure()
+{
+  checkVarExisting();
+  //BasicDataServer *bds(_dsct->retrieveVarInternal2(_var_name);
+  //bds->clone();
+}
+
+void TransactionKillVar::perform()
+{
+  _dsct->deleteVar(_var_name.c_str());
+}
+
+/*!
+ * TODO
+ */
+void TransactionKillVar::rollBack()
+{
+}
+
+/*!
+ * no implementation it is not a bug ! killVar is not an event.
+ */
+void TransactionKillVar::notify()
+{
+}
+
 TransactionDictModify::TransactionDictModify(DataScopeServerTransaction *dsct, const std::string& varName):Transaction(dsct,varName),_varc(0)
 {
   _varc=checkVarExistingAndDict();
@@ -261,7 +294,7 @@ void TransactionMultiKeyAddSession::prepareRollBackInCaseOfFailure()
 
 void TransactionMultiKeyAddSession::perform()
 {
-  _dsct->moveStatusOfVarFromRdExtInitToRdExt(_var_name);
+  _dsct->moveStatusOfVarFromRdExtOrRdExtInitToRdExt(_var_name);
 }
 
 /*!