FDO .NET API Reference | Feature Data Objects |
00001 /* 00002 * Copyright (C) 2004-2006 Autodesk, Inc. 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of version 2.1 of the GNU Lesser 00006 * General Public License as published by the Free Software Foundation. 00007 * 00008 * This library is distributed in the hope that it will be useful, 00009 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00010 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00011 * Lesser General Public License for more details. 00012 * 00013 * You should have received a copy of the GNU Lesser General Public 00014 * License along with this library; if not, write to the Free Software 00015 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00016 * 00017 */ 00018 00019 #pragma once 00020 00021 #include "FDO\Commands\mgIFeatureCommandImp.h" 00022 #include "FDO\Commands\LongTransaction\mgIRollbackLongTransaction.h" 00023 00024 class FdoIRollbackLongTransactionImp; 00025 00026 BEGIN_NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION 00027 00028 /// \ingroup (OSGeoFDOCommandsLongTransaction) 00029 /// \brief 00030 /// The IRollbackLongTransactionImp class is a concrete implementation of IRollbackLongTransaction. 00031 /// The IRollbackLongTransaction interface defines the RollbackLongTransaction 00032 /// command, which allows a user to execute rollback operations on a long 00033 /// transaction. Two different rollback operations are distinguished: full and partial. 00034 /// 00035 /// <ol> 00036 /// <li>A full rollback operation is executed on all data within a long transaction and all its descendents. The data is removed from the database and all versions involved in the process deleted. 00037 /// <li> A partial rollback operation is executed on a subset of the data within a long transaction (which could be all data). The specified data in this long transaction and all its descendents are removed from the database. The versions involved in the process are not removed. The subset of the data to be rolled back is defined by a class name and a set of filter criteria. 00038 /// </ol> 00039 /// 00040 /// To perform a rollback operation, the user requires the access and 00041 /// rollback privileges for the long transaction to be rolled back (in the case 00042 /// of a full rollback, the user also requires the remove privilege for the 00043 /// long transaction) and the access privilege for all the descendent 00044 /// versions. 00045 private __gc class IRollbackLongTransactionImp : public NAMESPACE_OSGEO_FDO_COMMANDS::IFeatureCommandImp, public NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION::IRollbackLongTransaction 00046 { 00047 public: 00048 /// \brief 00049 /// Gets the name of the long transaction to roll back as a string. 00050 /// 00051 /// \return 00052 /// Returns the name of the long transaction. 00053 /// 00054 __property System::String* get_Name(); 00055 00056 /// \brief 00057 /// Sets the name of the long transaction to roll back as a string. 00058 /// 00059 /// \param value 00060 /// Input the name of the long transaction. 00061 /// 00062 /// \return 00063 /// Returns nothing 00064 /// 00065 __property System::Void set_Name(System::String* value); 00066 00067 /// \brief 00068 /// Executes the RollbackLongTransaction command. 00069 /// 00070 /// \return 00071 /// Returns nothing 00072 /// 00073 System::Void Execute(); 00074 00075 public private: 00076 IRollbackLongTransactionImp(System::IntPtr unmanaged, System::Boolean autoDelete) : NAMESPACE_OSGEO_FDO_COMMANDS::IFeatureCommandImp(unmanaged, autoDelete) 00077 { 00078 00079 } 00080 00081 inline FdoIRollbackLongTransaction* GetImpObj(); 00082 }; 00083 00084 END_NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION 00085 00086
Comments or suggestions? Send us feedback. |