Changes between Version 2 and Version 3 of FDORfc58
- Timestamp:
- 03/29/11 18:44:26 (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
FDORfc58
v2 v3 22 22 == Overview == 23 23 24 The RFC is to add an extra parameter to FdoICommitLongTransaction command to indicate whether to remove it from version graph after one long transaction is committed successfully.24 The RFC is to add an extra parameter to FdoICommitLongTransaction command to indicate whether to remove the long transaction after is committed successfully or to keep it. 25 25 26 26 == Motivation == 27 27 28 Currently after executing FdoICommitLongTransaction command successfully, FDO will merge changes in this long transaction to the parent version and delete the child version. Based on feedback from ArcSDE users, they would like to see a merge operation that does not remove the child. They want to keep using the child version for editing.28 Currently after executing FdoICommitLongTransaction command successfully, FDO will merge changes in this long transaction to the parent version and delete the child version. Based on feedback from ArcSDE users, they would like to see a merge operation that does not remove the child. They want to keep using the child version to reuse for further editing work. 29 29 30 30 == Proposed Solution == 31 31 32 The proposed solution is to add an extra parameter to FdoICommitLongTransaction command to indicate whether to keep the committed long transaction from version graph. Its default value is false. It means removing the long transaction from version graph after it is committed. Changes to class FdoICommitLongTransaction are as follows.32 The proposed solution is to add an extra parameter to FdoICommitLongTransaction command to indicate whether to keep the committed long transaction in the version graph and not remove it. Its default value is false. It means removing the long transaction from version graph after it is committed. Changes to class FdoICommitLongTransaction are as follows. 33 33 34 34 {{{ … … 37 37 public: 38 38 /// \brief 39 /// Returns true if keeping it after the long transaction is committed. 40 /// Returns false if remove it after the long transaction is committed. 39 /// Returns true if keeping the long transaction after it is committed. 40 /// Returns false if remove the long transaction after it is committed. 41 /// Default value for KeepLongTransaction is false. 41 42 /// 42 43 /// \return 43 /// Returns true if keeping it after the long transactionis committed.44 /// Returns true if keeping the long transaction after it is committed. 44 45 /// 45 FDO_API virtual FdoBoolean WillKeepLongTransaction () = 0;46 FDO_API virtual FdoBoolean GetKeepLongTransaction () = 0; 46 47 47 48 /// \brief 48 /// Sets whether to keep it after the long transaction is committed. 49 /// Sets whether to keep the long transaction after it is committed. 50 /// Default value for KeepLongTransaction is false. 49 51 /// 50 52 /// \param value … … 55 57 /// Returns nothing 56 58 /// 57 FDO_API virtual void KeepLongTransaction (FdoBoolean value) = 0;59 FDO_API virtual void SetKeepLongTransaction (FdoBoolean value) = 0; 58 60 ...... 59 61 };