- Main Page
- Related Pages
- Modules
- Classes
- Files

# ILongTransactionReader.h

Go to the documentation of this file.

    00001 #ifndef _ILONGTRANSACTIONREADER_H_
    00002 #define _ILONGTRANSACTIONREADER_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/LongTransaction/LongTransactionConstants.h>
    00028
    00029 /// \brief
    00030 /// The FdoILongTransactionReader interface provides forward only,
    00031 /// read-only functionality for enumerating long transactions.  A reference
    00032 /// to an FdoILongTransactionReader is returned from the GetLongTransactions
    00033 /// command. The initial position of the FdoILongTransactionReader is prior
    00034 /// to the first item. Thus, you must call ReadNext to begin accessing any
    00035 /// data.
    00036 class FdoILongTransactionReader : public FdoIDisposable
    00037 {
    00038 public:
    00039
    00040     /// \brief
    00041     /// Retrieves the name of the long transaction currently being
    00042     /// read.
    00043     ///
    00044     /// \return
    00045     /// Returns the name of the long transaction.
    00046     ///
    00047     FDO_API virtual FdoString* GetName() = 0;
    00048
    00049     /// \brief
    00050     /// Retrieves the description of the long transaction currently
    00051     /// being read.
    00052     ///
    00053     /// \return
    00054     /// Returns the description of the long transaction.
    00055     ///
    00056     FDO_API virtual FdoString* GetDescription() = 0;
    00057
    00058     /// \brief
    00059     /// Provides access to the direct descendent long transactions
    00060     /// for the long transaction being currently read. The caller can use the
    00061     /// returned reader to get to the next level of descendents if required.
    00062     /// The returned reader is empty if there are no descendents for the long
    00063     /// transction.
    00064     ///
    00065     /// \return
    00066     /// Returns a long transaction reader with the direct descendents
    00067     /// for the long transaction currently being read.
    00068     ///
    00069     FDO_API virtual FdoILongTransactionReader* GetChildren() = 0;
    00070
    00071     /// \brief
    00072     /// Provides access to the direct ascendant long transactions for
    00073     /// the long transaction being currently read. The caller can use the
    00074     /// returned reader to get to the next level of ascendants if required.
    00075     /// The returned reader is empty if there are no ascendants for the long
    00076     /// transaction
    00077     ///
    00078     /// \return
    00079     /// Returns a long transaction reader with the direct ascendants
    00080     /// for the long transaction currently being read.
    00081     ///
    00082     FDO_API virtual FdoILongTransactionReader* GetParents() = 0;
    00083
    00084     /// \brief
    00085     /// Retrieves the owner of the long transaction currently being
    00086     /// read.
    00087     ///
    00088     /// \return
    00089     /// Returns the owner name.
    00090     ///
    00091     FDO_API virtual FdoString* GetOwner() = 0;
    00092
    00093     /// \brief
    00094     /// Retrieves the creation date of the long transaction currently
    00095     /// being read.
    00096     ///
    00097     /// \return
    00098     /// Returns the date when the long transaction was created.
    00099     ///
    00100     FDO_API virtual FdoDateTime GetCreationDate() = 0;
    00101
    00102     /// \brief
    00103     /// Returns true if the long transaction currently being read is
    00104     /// the active long transaction.
    00105     ///
    00106     /// \return
    00107     /// Returns true if the long transaction is active.
    00108     ///
    00109     FDO_API virtual bool IsActive() = 0;
    00110
    00111     /// \brief
    00112     /// Returns true if the long transaction currently being read is
    00113     /// frozen.
    00114     ///
    00115     /// \return
    00116     /// Returns true if the long transaction is frozen.
    00117     ///
    00118     FDO_API virtual bool IsFrozen() = 0;
    00119
    00120     /// \brief
    00121     /// Advances the reader to the next item. The default position of
    00122     /// the reader is prior to the first item. Thus, you must call ReadNext
    00123     /// to begin accessing any data.
    00124     ///
    00125     /// \return
    00126     /// Returns true if there is a next item.
    00127     ///
    00128     FDO_API virtual bool ReadNext() = 0;
    00129
    00130     /// \brief
    00131     /// Closes the FdoILongTransactionReader object, freeing any
    00132     /// resources it may be holding.
    00133     ///
    00134     /// \return
    00135     /// Returns nothing
    00136     ///
    00137     FDO_API virtual void Close() = 0;
    00138
    00139 };
    00140 #endif
    00141
    00142

Please send us your comment about this page