FDO API Reference | Feature Data Objects |
00001 #ifndef _ILOCKEDOBJECTREADER_H_ 00002 #define _ILOCKEDOBJECTREADER_H_ 00003 // 00004 00005 // 00006 // Copyright (C) 2004-2006 Autodesk, Inc. 00007 // 00008 // This library is free software; you can redistribute it and/or 00009 // modify it under the terms of version 2.1 of the GNU Lesser 00010 // General Public License as published by the Free Software Foundation. 00011 // 00012 // This library is distributed in the hope that it will be useful, 00013 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 // Lesser General Public License for more details. 00016 // 00017 // You should have received a copy of the GNU Lesser General Public 00018 // License along with this library; if not, write to the Free Software 00019 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00020 // 00021 00022 #ifdef _WIN32 00023 #pragma once 00024 #endif 00025 00026 #include <FdoStd.h> 00027 #include <Fdo/Commands/Locking/LockType.h> 00028 #include <Fdo/Commands/PropertyValueCollection.h> 00029 00030 /// \brief 00031 /// The FdoILockedObjectReader interface provides forward-only, read-only 00032 /// functionality to identify lock information for a set of objects. 00033 /// \remarks 00034 /// A reference to an FdoILockedObjectReader interface is returned from the GetLockedObjects 00035 /// and GetLockInfo commands. The initial position of the FdoILockInfoReader is 00036 /// prior to the first item. Thus, you must call ReadNext to begin accessing 00037 /// any data. 00038 class FdoILockedObjectReader : public FdoIDisposable 00039 { 00040 public: 00041 /// \brief 00042 /// Gets the class name of the feature currently being read. 00043 /// 00044 /// \remarks 00045 /// The value of the class name will be null in the event that the 00046 /// class name could not be resolved. This can happen if the table has 00047 /// no class id field and multiple classes have been written to the table. 00048 /// 00049 /// \return 00050 /// Returns the name of the class. 00051 /// 00052 FDO_API virtual FdoString* GetFeatureClassName() = 0; 00053 00054 /// \brief 00055 /// Gets an FdoPropertyValueCollection containing the property values 00056 /// that uniquely identify the feature currently being read. 00057 /// 00058 /// \return 00059 /// Returns the property collection identifying the feature. 00060 /// 00061 FDO_API virtual FdoPropertyValueCollection* GetIdentity() = 0; 00062 00063 /// \brief 00064 /// Gets the name of user who holds the lock on the feature currently being 00065 /// read. 00066 /// 00067 /// \return 00068 /// Returns the lock owner 00069 /// 00070 FDO_API virtual FdoString* GetLockOwner() = 0; 00071 00072 /// \brief 00073 /// Gets the type of the lock held on the feature currently being read. 00074 /// 00075 /// \return 00076 /// Returns the lock type 00077 /// 00078 FDO_API virtual const FdoLockType GetLockType() = 0; 00079 00080 /// \brief 00081 /// Gets the name of the long transaction in which the feature 00082 /// currently being read is locked. 00083 /// 00084 /// \return 00085 /// Returns the name of the long transaction in which the feature 00086 /// currently being read is locked. 00087 /// 00088 FDO_API virtual FdoString* GetLongTransaction() = 0; 00089 00090 /// \brief 00091 /// Advances the reader to the next item. The default position of the 00092 /// reader is prior to the first item. Thus, you must call ReadNext 00093 /// to begin accessing any data. 00094 /// 00095 /// \return 00096 /// Returns true if there is a next item. 00097 /// 00098 FDO_API virtual bool ReadNext() = 0; 00099 00100 /// \brief 00101 /// Closes the FdoILockInfoReader object, freeing any resources it may 00102 /// be holding. 00103 /// 00104 /// \return 00105 /// Returns nothing 00106 /// 00107 FDO_API virtual void Close() = 0; 00108 00109 }; 00110 #endif 00111 00112
Comments or suggestions? Send us feedback. |