Salome HOME
add method NameChanged to update title name
[modules/kernel.git] / src / SALOMESDS / SALOMESDS_Transaction.hxx
index 4fad07b058cfbf4fb6e1badee507638c5385d44c..c7fced70e0acedb42b34165b688d7742904156f4 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
@@ -83,6 +83,13 @@ namespace SALOMESDS
     void perform();
   };
 
+  class TransactionRdExtInitVarCreate : public TransactionVarCreate
+  {
+  public:
+    TransactionRdExtInitVarCreate(DataScopeServerTransaction *dsct, const std::string& varName, const SALOME::ByteVec& constValue):TransactionVarCreate(dsct,varName,constValue) { }
+    void perform();
+  };
+
   class TransactionRdWrVarCreate : public TransactionVarCreate
   {
   public:
@@ -90,6 +97,16 @@ namespace SALOMESDS
     void perform();
   };
 
+  class TransactionKillVar : public Transaction
+  {
+  public:
+    TransactionKillVar(DataScopeServerTransaction *dsct, const std::string& varName);
+    void prepareRollBackInCaseOfFailure();
+    void perform();
+    void rollBack();
+    void notify();
+  };
+
   class PickelizedPyObjServer;
 
   class TransactionDictModify : public Transaction
@@ -153,6 +170,22 @@ namespace SALOMESDS
     void rollBack();
     void notify();
   };
+
+  /*!
+   * This transaction switch from RdExt to RdExtInit in constructor and when perform called RdExtInit to RdExt.
+   */
+  class TransactionMultiKeyAddSession : public Transaction, public virtual POA_SALOME::TransactionMultiKeyAddSession
+  {
+  public:
+    TransactionMultiKeyAddSession(DataScopeServerTransaction *dsct, const std::string& varName);
+  public://remotely callable
+    void addKeyValueInVarErrorIfAlreadyExistingNow(const SALOME::ByteVec& key, const SALOME::ByteVec& value);
+  public:
+    void prepareRollBackInCaseOfFailure();
+    void perform();
+    void rollBack();
+    void notify();
+  };
 }
 
 #endif