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\mgICommandImp.h" 00022 #include "FDO\Commands\LongTransaction\mgIFreezeLongTransaction.h" 00023 #include "FDO\Commands\LongTransaction\mgLongTransactionFreezeOperations.h" 00024 00025 class FdoIFreezeLongTransaction; 00026 00027 BEGIN_NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION 00028 00029 /// \ingroup (OSGeoFDOCommandsLongTransaction) 00030 /// \brief 00031 /// The IFreezeLongTransactionImp class is a 00032 /// concrete implementation of IFreezeLongTransaction. 00033 /// The IFreezeLongTransaction interface defines the FreezeLongTransaction 00034 /// command, which freezes or thaws a long transaction. When a long transaction 00035 /// is frozen the user who froze it gains exclusive access to it. Other users can 00036 /// read it, but not apply any updates. 00037 /// Input to the FreezeLongTransaction command is the long transaction name and 00038 /// the operation to perform. The Execute method performs the specified 00039 /// operation on the identified long transaction if the user has access 00040 /// privileges for the indicated long transaction. 00041 private __gc class IFreezeLongTransactionImp : public NAMESPACE_OSGEO_FDO_COMMANDS::ICommandImp, 00042 public NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION::IFreezeLongTransaction 00043 { 00044 public: 00045 /// \brief 00046 /// Gets the name of the long transaction to freeze or unfreeze as a string. 00047 /// 00048 /// \return 00049 /// Returns the name of the long transaction 00050 /// 00051 __property System::String* get_Name(); 00052 00053 /// \brief 00054 /// Sets the name of the long transaction to freeze or unfreeze as a string. 00055 /// 00056 /// \param value 00057 /// Input the name of the long transaction 00058 /// 00059 /// \return 00060 /// Returns nothing 00061 /// 00062 __property System::Void set_Name(System::String* value); 00063 00064 /// \brief 00065 /// Gets the operation to perform (Freeze or Thaw) on the long transaction. 00066 /// 00067 /// \return 00068 /// Returns the operation to perform 00069 /// 00070 __property NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION::LongTransactionFreezeOperations get_Operation(); 00071 00072 /// \brief 00073 /// Sets the operation to perform (Freeze or Thaw) on the long transaction. 00074 /// 00075 /// \param value 00076 /// Input the operation to perform 00077 /// 00078 /// \return 00079 /// Returns nothing 00080 /// 00081 __property System::Void set_Operation(NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION::LongTransactionFreezeOperations value); 00082 00083 /// \brief 00084 /// Executes the command. 00085 /// 00086 /// \return 00087 /// Returns nothing 00088 /// 00089 System::Void Execute(); 00090 00091 public private: 00092 IFreezeLongTransactionImp(System::IntPtr unmanaged, System::Boolean autoDelete) : NAMESPACE_OSGEO_FDO_COMMANDS::ICommandImp(unmanaged, autoDelete) 00093 { 00094 00095 } 00096 00097 inline FdoIFreezeLongTransaction* GetImpObj(); 00098 }; 00099 00100 END_NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION 00101 00102
Comments or suggestions? Send us feedback. |