FDO .NET API Reference Feature Data Objects

mgILongTransactionReaderImp.h

Go to the documentation of this file.
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\LongTransaction\mgILongTransactionReader.h"
00022 
00023 class FdoILongTransactionReader;
00024 
00025 BEGIN_NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION
00026 public __gc __interface ILongTransactionReader;
00027 
00028 /// \ingroup (OSGeoFDOCommandsLongTransaction)
00029 /// \brief
00030 /// The ILongTransactionReaderImp class is a concrete implementation of ILongTransactionReader.
00031 /// The ILongTransactionReader interface provides forward only,
00032 /// read-only functionality for enumerating long transactions.  A reference
00033 /// to an ILongTransactionReader is returned from the GetLongTransactions
00034 /// command. The initial position of the ILongTransactionReader is prior
00035 /// to the first item. Thus, you must call ReadNext to begin accessing any
00036 /// data.
00037 private __gc class ILongTransactionReaderImp : public NAMESPACE_OSGEO_RUNTIME::Disposable, 
00038                                                public NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION::ILongTransactionReader
00039 {
00040 public:
00041     /// \brief
00042     /// Retrieves the name of the long transaction currently being
00043     /// read.
00044     /// 
00045     /// \return
00046     /// Returns the name of the long transaction.
00047     /// 
00048     System::String* GetName();
00049 
00050     /// \brief
00051     /// Retrieves the description of the long transaction currently
00052     /// being read.
00053     /// 
00054     /// \return
00055     /// Returns the description of the long transaction.
00056     /// 
00057     System::String* GetDescription();
00058 
00059     /// \brief
00060     /// Provides access to the direct descendent long transactions 
00061     /// for the long transaction being currently read. The caller can use the
00062     /// returned reader to get to the next level of descendents if required.
00063     /// The returned reader is empty if there are no descendents for the long
00064     /// transction.
00065     /// 
00066     /// \return
00067     /// Returns a long transaction reader with the direct descendents
00068     /// for the long transaction currently being read.
00069     /// 
00070     NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION::ILongTransactionReader* GetChildren();
00071 
00072     /// \brief
00073     /// Provides access to the direct ascendant long transactions for
00074     /// the long transaction being currently read. The caller can use the 
00075     /// returned reader to get to the next level of ascendants if required.
00076     /// The returned reader is empty if there are no ascendants for the long
00077     /// transaction
00078     /// 
00079     /// \return
00080     /// Returns a long transaction reader with the direct ascendants 
00081     /// for the long transaction currently being read.
00082     /// 
00083     NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION::ILongTransactionReader* GetParents();
00084 
00085     /// \brief
00086     /// Retrieves the owner of the long transaction currently being
00087     /// read.
00088     /// 
00089     /// \return
00090     /// Returns the owner name.
00091     /// 
00092     System::String* GetOwner();
00093 
00094     /// \brief
00095     /// Retrieves the creation date of the long transaction currently
00096     /// being read.
00097     /// 
00098     /// \return
00099     /// Returns the date when the long transaction was created.
00100     /// 
00101     System::DateTime GetCreationDate();
00102 
00103     /// \brief
00104     /// Returns true if the long transaction currently being read is
00105     /// the active long transaction.
00106     /// 
00107     /// \return
00108     /// Returns true if the long transaction is active.
00109     /// 
00110     System::Boolean IsActive();
00111 
00112     /// \brief
00113     /// Returns true if the long transaction currently being read is
00114     /// frozen.
00115     /// 
00116     /// \return
00117     /// Returns true if the long transaction is frozen.
00118     /// 
00119     System::Boolean IsFrozen();
00120 
00121     /// \brief
00122     /// Advances the reader to the next item. The default position of
00123     /// the reader is prior to the first item. Thus, you must call ReadNext
00124     /// to begin accessing any data.
00125     /// 
00126     /// \return
00127     /// Returns true if there is a next item.
00128     /// 
00129     System::Boolean ReadNext();
00130 
00131     /// \brief
00132     /// Closes the ILongTransactionReader object, freeing any
00133     /// resources it may be holding.
00134     /// 
00135     /// \return
00136     /// Returns nothing
00137     /// 
00138     System::Void Close();
00139 
00140 /// \cond DOXYGEN-IGNORE
00141 protected:
00142     __sealed System::Void ReleaseUnmanagedObject();
00143 /// \endcond
00144 
00145 public private:
00146     ILongTransactionReaderImp(System::IntPtr unmanaged, System::Boolean autoDelete) : NAMESPACE_OSGEO_RUNTIME::Disposable(unmanaged, autoDelete)
00147     {
00148 
00149     }
00150 
00151     inline FdoILongTransactionReader* GetImpObj();
00152 };
00153 
00154 END_NAMESPACE_OSGEO_FDO_COMMANDS_LONGTRANSACTION
00155 
00156 

Comments or suggestions? Send us feedback.