[fdo-commits] r712 - branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO
svn_fdo at osgeo.org
svn_fdo at osgeo.org
Thu Feb 1 20:11:19 EST 2007
Author: gregboone
Date: 2007-02-01 20:11:19 -0500 (Thu, 01 Feb 2007)
New Revision: 712
Modified:
branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIConnectionManager.h
branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIConnectionManagerImp.h
branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIDisposableCollection.h
branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIProviderRegistry.h
branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIProviderRegistryImp.h
branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgObjectFactory.h
Log:
893057: DOC: FDO Managed API Documentation Updates
Modified: branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIConnectionManager.h
===================================================================
--- branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIConnectionManager.h 2007-02-02 01:10:41 UTC (rev 711)
+++ branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIConnectionManager.h 2007-02-02 01:11:19 UTC (rev 712)
@@ -24,6 +24,22 @@
BEGIN_NAMESPACE_OSGEO_FDO
+/// \brief
+///
+/// The IConnectionManager interface supports dynamic creation of connection objects
+/// given a provider name.
+///
+/// \remarks
+///
+/// In order for dynamic creation to work, each dynamic link library, shared library,
+/// or assembly that implements a provider must supply a well-defined entry point function that
+/// takes as input a provider name and returns an FdoIConnection instance. The definition of the
+/// entry point function is language- and platform-dependent. For this release of FDO, the
+/// windows libraries supporting FDO providers will be expected to support the following well-known
+/// entry point function, which will create and return an unitialized connection object:
+///
+/// FdoIConnection * CreateConnection();
+///
public __gc __interface IConnectionManager : public System::IDisposable
{
public:
@@ -35,7 +51,7 @@
/// [Company].[Provider].[Version].
///
/// \return
- /// Returns an instance of an IConnection object. Throws an instance of FdoException * if an error occurs.
+ /// Returns an instance of an IConnection object. Throws an instance of Exception if an error occurs.
///
NAMESPACE_OSGEO_FDO_CONNECTIONS::IConnection* CreateConnection(String* providerName);
Modified: branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIConnectionManagerImp.h
===================================================================
--- branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIConnectionManagerImp.h 2007-02-02 01:10:41 UTC (rev 711)
+++ branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIConnectionManagerImp.h 2007-02-02 01:11:19 UTC (rev 712)
@@ -28,7 +28,23 @@
BEGIN_NAMESPACE_OSGEO_FDO
-private __gc class IConnectionManagerImp : public NAMESPACE_OSGEO_RUNTIME::Disposable, public NAMESPACE_OSGEO_FDO::IConnectionManager
+/// \brief
+///
+/// The IConnectionManagerImp class supports dynamic creation of connection objects
+/// given a provider name. Derives from IConnectionManager interface.
+/// \remarks
+///
+/// In order for dynamic creation to work, each dynamic link library, shared library,
+/// or assembly that implements a provider must supply a well-defined entry point function that
+/// takes as input a provider name and returns an FdoIConnection instance. The definition of the
+/// entry point function is language- and platform-dependent. For this release of FDO, the
+/// windows libraries supporting FDO providers will be expected to support the following well-known
+/// entry point function, which will create and return an unitialized connection object:
+///
+/// IConnection * CreateConnection();
+///
+private __gc class IConnectionManagerImp :
+ public NAMESPACE_OSGEO_RUNTIME::Disposable, public NAMESPACE_OSGEO_FDO::IConnectionManager
{
public:
/// \brief
Modified: branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIDisposableCollection.h
===================================================================
--- branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIDisposableCollection.h 2007-02-02 01:10:41 UTC (rev 711)
+++ branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIDisposableCollection.h 2007-02-02 01:11:19 UTC (rev 712)
@@ -27,9 +27,28 @@
[System::Reflection::DefaultMemberAttribute("RealTypeItem")]
public __sealed __gc class IDisposableCollection : public NAMESPACE_OSGEO_RUNTIME::Disposable, public System::Collections::IList
{
+/// \cond DOXYGEN-IGNORE
private:
/// \brief
- /// nested class defined to provide Enumerator.
+ /// A Nested class defined to provide enumeration of Dictionary elements
+ ///
+ /// Enumerators can be used to read the data in the collection,
+ /// but they cannot be used to modify the underlying collection.
+ ///
+ /// An enumerator remains valid as long as the collection remains unchanged.
+ /// If changes are made to the collection, such as adding, modifying, or deleting
+ /// elements, the enumerator is irrecoverably invalidated and the next call to
+ /// MoveNext or Reset throws an InvalidOperationException. If the collection is
+ /// modified between MoveNext and Current, Current returns the element that it is
+ /// set to, even if the enumerator is already invalidated.
+ ///
+ /// The enumerator does not have exclusive access to the collection; therefore,
+ /// enumerating through a collection is intrinsically not a thread-safe procedure.
+ /// Even when a collection is synchronized, other threads can still modify the
+ /// collection, which causes the enumerator to throw an exception. To guarantee
+ /// thread safety during enumeration, you can either lock the collection during
+ /// the entire enumeration or catch the exceptions resulting from changes made
+ /// by other threads.
///
__gc class Enumerator : public System::Collections::IEnumerator
{
@@ -38,15 +57,47 @@
System::Int32 m_nIdx;
public:
+ /// \brief
+ /// Constructs a new Collection Enumerator
+ ///
+ /// \param col
+ /// Input The collection to enumerate.
+ ///
Enumerator(IDisposableCollection* elements) : m_pCol(elements), m_nIdx(-1)
{
}
- __property System::Object* get_Current();
+ /// \brief
+ /// Retrieves the current object at the enumerator location
+ ///
+ /// \return
+ /// Retuns the current object referenced by the enumerator
+ ///
+ __property System::Object *get_Current();
+ /// \brief
+ /// Initially, the enumerator is positioned before the first object in the collection.
+ /// At this position, calling the Current property throws an exception.
+ /// Therefore, you must call the MoveNext method to advance the enumerator
+ /// to the first element of the collection before reading the value of Current.
+ /// If MoveNext passes the end of the collection, the enumerator is positioned
+ /// after the last element in the collection and MoveNext returns false.
+ /// When the enumerator is at this position, subsequent calls to MoveNext also return false.
+ /// If the last call to MoveNext returned false, calling Current throws an exception.
+ /// To set Current to the first element of the collection again, you can call Reset
+ /// followed by MoveNext.
+ ///
+ /// \return
+ /// Retuns true if the Enumerator is able to move to a valid element
+ /// otherwise false.
+ ///
System::Boolean MoveNext();
+ /// \brief
+ /// Initially, the enumerator is positioned before the first element in the collection.
+ /// The Reset method brings the enumerator back to this position.
+ ///
System::Void Reset();
};
@@ -54,55 +105,69 @@
inline FdoIDisposableCollection* GetImpObj();
private:
- // System::Collections::ICollection interfaces
- System::Void System::Collections::ICollection::CopyTo(System::Array* array,System::Int32 index);
+ // System::Collections::ICollection interface properties
+ __property System::Object* System::Collections::ICollection::get_SyncRoot();
+ __property System::Boolean System::Collections::ICollection::get_IsSynchronized();
- __property System::Object* System::Collections::ICollection::get_SyncRoot();
+ // System::Collections::ICollection interface methods
+ System::Void System::Collections::ICollection::CopyTo(System::Array* array,System::Int32 index);
- __property System::Boolean System::Collections::ICollection::get_IsSynchronized();
+ // System::Collections::IList interface properties
+ __property System::Boolean System::Collections::IList::get_IsFixedSize();
+ __property System::Boolean System::Collections::IList::get_IsReadOnly();
+ __property Object* System::Collections::IList::get_Item(System::Int32 index);
+ __property System::Void System::Collections::IList::set_Item(System::Int32 index, Object* value);
- // System::Collections::IList interfaces
- __property System::Boolean System::Collections::IList::get_IsFixedSize();
+ // System::Collections::IList interface methods
+ System::Int32 System::Collections::IList::Add(Object* value);
+ System::Boolean System::Collections::IList::Contains(Object* value);
+ System::Int32 System::Collections::IList::IndexOf(Object* value);
+ System::Void System::Collections::IList::Insert(System::Int32 index, Object* value);
+ System::Void System::Collections::IList::Remove(Object* value);
- __property System::Boolean System::Collections::IList::get_IsReadOnly();
-
- System::Int32 System::Collections::IList::Add(Object* value);
-
- System::Boolean System::Collections::IList::Contains(Object* value);
-
- System::Int32 System::Collections::IList::IndexOf(Object* value);
-
- System::Void System::Collections::IList::Insert(System::Int32 index, Object* value);
-
- System::Void System::Collections::IList::Remove(Object* value);
-
- __property Object* System::Collections::IList::get_Item(System::Int32 index);
-
- __property System::Void System::Collections::IList::set_Item(System::Int32 index, Object* value);
-
protected:
System::Void ReleaseUnmanagedObject();
+/// \endcond
public:
+ /// \brief
+ /// Default collection constructor. Creates an empty collection.
+ ///
IDisposableCollection();
+ /// \brief
+ /// Constructs an instance of the object based on an unmanaged instance of the object
+ ///
+ /// \param unmanaged
+ /// Input A Pointer to the unmanaged object.
+ ///
+ /// \param autoDelete
+ /// Input Indicates if the constructed object should be automatically deleted
+ /// once it no longer referenced.
+ ///
IDisposableCollection(System::IntPtr unmanaged, System::Boolean autoDelete) : NAMESPACE_OSGEO_RUNTIME::Disposable(unmanaged, autoDelete)
{
}
/// \brief
- /// Gets the count of items in collection.
+ /// Gets the count of items in collection.
///
+ /// \return
+ /// Returns the number of items in the collection.
+ ///
__property System::Int32 get_Count(System::Void);
/// \brief
- /// Gets an enumerator that can iterate through a collection.
+ /// Gets an enumerator that can iterate through a collection.
///
+ /// \return
+ /// Returns the collection enumerator interface.
+ ///
__sealed System::Collections::IEnumerator* GetEnumerator(System::Void);
/// \brief
- /// Removes the index-th NAMESPACE_OSGEO_RUNTIME::Disposable from this collection.
+ /// Removes the index-th NAMESPACE_OSGEO_RUNTIME::Disposable from this collection.
///
/// \param index
/// Input index of the element to remove.
@@ -110,83 +175,116 @@
System::Void RemoveAt(System::Int32 index);
/// \brief
- /// Removes all elements from the collection.
+ /// Removes all elements from the collection.
///
System::Void Clear();
/// \brief
- /// Adds a NAMESPACE_OSGEO_RUNTIME::Disposable object into the collection.
+ /// Adds a Disposable object into the collection.
///
/// \param value
- /// Input the NAMESPACE_OSGEO_RUNTIME::Disposable object to add.
+ /// Input the Disposable object to add.
///
/// \return
- /// Returns the position into which the new element was inserted.
+ /// Returns the position into which the new element was inserted.
///
System::Int32 Add(NAMESPACE_OSGEO_RUNTIME::Disposable* value);
/// \brief
- /// Determines the index of a specific NAMESPACE_OSGEO_RUNTIME::Disposable object.
+ /// Determines the index of a specific Disposable object.
///
/// \param value
- /// Input the NAMESPACE_OSGEO_RUNTIME::Disposable object to locate in the collection.
+ /// Input the Disposable object to locate in the collection.
///
/// \return
- /// The index of value if found in the collection; otherwise, -1.
+ /// The index of value if found in the collection; otherwise, -1.
///
System::Int32 IndexOf(NAMESPACE_OSGEO_RUNTIME::Disposable* value);
/// \brief
- /// Inserts a NAMESPACE_OSGEO_RUNTIME::Disposable object into the collection at the specified position.
+ /// Inserts a Disposable object into the collection at the specified position.
///
/// \param index
/// Input the zero-based index at which value should be inserted.
+ ///
/// \param value
- /// Input the NAMESPACE_OSGEO_RUNTIME::Disposable object to insert.
+ /// Input the Disposable object to insert.
///
System::Void Insert(System::Int32 index, NAMESPACE_OSGEO_RUNTIME::Disposable* value);
/// \brief
- /// Removes the first occurrence of a specific NAMESPACE_OSGEO_RUNTIME::Disposable object.
+ /// Removes the first occurrence of a specific Disposable object.
///
/// \param value
- /// Input the NAMESPACE_OSGEO_RUNTIME::Disposable object to remove from the collection.
+ /// Input the Disposable object to remove from the collection.
///
System::Void Remove(NAMESPACE_OSGEO_RUNTIME::Disposable* value);
/// \brief
- /// Determines whether the collection contains a specific NAMESPACE_OSGEO_RUNTIME::Disposable object.
+ /// Determines whether the collection contains a specific Disposable object.
///
/// \param value
- /// Input The NAMESPACE_OSGEO_RUNTIME::Disposable object to search in the collection.
+ /// Input The Disposable object to search in the collection.
///
/// \return
- /// Returns true if the value is found in the collection; otherwise, false.
+ /// Returns true if the value is found in the collection; otherwise, false.
///
System::Boolean Contains(NAMESPACE_OSGEO_RUNTIME::Disposable* value);
/// \brief
- /// Copies the elements of the collection to an array.
+ /// Copies the elements of the collection to an array.
///
/// \param array
/// Output the one-dimensional Array that is the destination of the elements copied from this collection.
+ ///
/// \param startAt
/// Input an integer that represents the index in array at which copying begins.
///
System::Void CopyTo(NAMESPACE_OSGEO_RUNTIME::Disposable* array[],System::Int32 size);
/// \brief
- /// Gets or sets a NAMESPACE_OSGEO_RUNTIME::Disposable in the collection.
+ /// Gets the item in the collection at the specified index.
///
/// \param index
- /// Input index of the NAMESPACE_OSGEO_RUNTIME::Disposable to retrieve or set (System::Int32).
+ /// The index of the item in the collection. The index is 0 based.
///
+ /// \return
+ /// Returns an instance of a the collected item.
+ /// Throws an instance of Exception if the index is out of range or an error occurs.
+ ///
__property NAMESPACE_OSGEO_RUNTIME::Disposable* get_RealTypeItem(System::Int32 index);
+ /// \brief
+ /// Sets the value of the item at the specified index
+ ///
+ /// \param index
+ /// Input index of the item to set.
+ ///
+ /// \param value
+ /// Input the value of the item
+ ///
__property System::Void set_RealTypeItem(System::Int32 index, NAMESPACE_OSGEO_RUNTIME::Disposable* value);
+ /// \brief
+ /// Gets an item in the collection.
+ ///
+ /// \param index
+ /// Input index of the item to retrieve.
+ ///
+ /// \return
+ /// Returns the item at the specified index
+ ///
__property NAMESPACE_OSGEO_RUNTIME::Disposable* get_Item(System::Int32 index);
+ /// \brief
+ /// Sets the value of the item at the specified index
+ ///
+ /// \param index
+ /// Input index of the item to set.
+ ///
+ /// \param value
+ /// Input the value of the item
+ ///
__property System::Void set_Item(System::Int32 index, NAMESPACE_OSGEO_RUNTIME::Disposable* value);
};
Modified: branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIProviderRegistry.h
===================================================================
--- branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIProviderRegistry.h 2007-02-02 01:10:41 UTC (rev 711)
+++ branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIProviderRegistry.h 2007-02-02 01:11:19 UTC (rev 712)
@@ -24,6 +24,12 @@
BEGIN_NAMESPACE_OSGEO_FDO
+/// \brief
+/// The IProviderRegistry interface supports registering, un-registering, and enumerating
+/// registered feature providers.
+///
+/// \note
+/// This is not the Windows registry.
public __gc __interface IProviderRegistry : public System::IDisposable
{
public:
Modified: branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIProviderRegistryImp.h
===================================================================
--- branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIProviderRegistryImp.h 2007-02-02 01:10:41 UTC (rev 711)
+++ branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgIProviderRegistryImp.h 2007-02-02 01:11:19 UTC (rev 712)
@@ -24,6 +24,14 @@
BEGIN_NAMESPACE_OSGEO_FDO
+/// \brief
+///
+/// The IProviderRegistryImp class is a concrete implementation of IProviderRegistry.
+/// IProviderRegistryImp supports registering, un-registering, and enumerating
+/// registered feature providers.
+///
+/// \note
+/// This is not the Windows registry.
private __gc class IProviderRegistryImp : public NAMESPACE_OSGEO_RUNTIME::Disposable, public NAMESPACE_OSGEO_FDO::IProviderRegistry
{
public:
@@ -85,8 +93,10 @@
::IProviderRegistry *GetImpObj();
+/// \cond DOXYGEN-IGNORE
protected:
System::Void ReleaseUnmanagedObject();
+/// \endcond
};
END_NAMESPACE_OSGEO_FDO
Modified: branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgObjectFactory.h
===================================================================
--- branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgObjectFactory.h 2007-02-02 01:10:41 UTC (rev 711)
+++ branches/3.2.x/Fdo/Managed/Src/OSGeo/FDO/mgObjectFactory.h 2007-02-02 01:11:19 UTC (rev 712)
@@ -234,8 +234,6 @@
static NAMESPACE_OSGEO_FDO_CONNECTIONS_CAPABILITIES::SignatureDefinitionCollection* CreateSignatureDefinitionCollection(System::IntPtr ptr, System::Boolean autoDispose);
static NAMESPACE_OSGEO_FDO_CONNECTIONS_CAPABILITIES::ReadOnlySignatureDefinitionCollection* CreateReadOnlySignatureDefinitionCollection(System::IntPtr ptr, System::Boolean autoDispose);
-
-
static NAMESPACE_OSGEO_FDO_CONNECTIONS::IConnection* CreateIConnection(System::IntPtr ptr, System::Boolean autoDispose);
static NAMESPACE_OSGEO_FDO_CONNECTIONS::IConnectionInfo* CreateIConnectionInfo(System::IntPtr ptr, System::Boolean autoDispose);
static NAMESPACE_OSGEO_FDO_CONNECTIONS::IConnectionPropertyDictionary* CreateIConnectionPropertyDictionary(System::IntPtr ptr, System::Boolean autoDispose);
More information about the fdo-commits
mailing list