Changes between Version 2 and Version 3 of FDORfc58


Ignore:
Timestamp:
Mar 29, 2011, 6:44:26 PM (13 years ago)
Author:
leaf
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • FDORfc58

    v2 v3  
    2222== Overview ==
    2323
    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.
     24The 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.
    2525
    2626== Motivation ==
    2727
    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.
     28Currently 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.
    2929
    3030== Proposed Solution ==
    3131
    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.
     32The 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.
    3333
    3434{{{
     
    3737public:
    3838    /// \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.
    4142    ///
    4243    /// \return
    43     /// Returns true if keeping it after the long transaction is committed.
     44    /// Returns true if keeping the long transaction after it is committed.
    4445    ///
    45     FDO_API virtual FdoBoolean WillKeepLongTransaction () = 0;
     46    FDO_API virtual FdoBoolean GetKeepLongTransaction () = 0;
    4647
    4748    /// \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.
    4951    ///
    5052    /// \param value
     
    5557    /// Returns nothing
    5658    ///
    57     FDO_API virtual void KeepLongTransaction (FdoBoolean value) = 0;
     59    FDO_API virtual void SetKeepLongTransaction (FdoBoolean value) = 0;
    5860    ......
    5961};