FDO .NET API Reference Feature Data Objects

mgIConnectionPropertyDictionary.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 BEGIN_NAMESPACE_OSGEO_FDO_CONNECTIONS
00022 
00023 /// \ingroup (OSGeoFDOConnections)
00024 /// \interface OSGeo::FDO::Connections::IConnectionPropertyDictionary
00025 /// \brief
00026 /// The IConnectionPropertyDictionary exposes a dictionary style interface
00027 /// to the connection properties. The properties required to establish a connection
00028 /// can be determined and their values can be set through this interface.
00029 /// Modifying connection properties through this
00030 /// interface dynamically modifies the connection string held by the connection
00031 /// object. When the connection is in an open state, calling SetProperty on this
00032 /// interface will result in an error.
00033 public __gc __interface IConnectionPropertyDictionary : public System::IDisposable
00034 {
00035 public:
00036     /// \brief
00037     /// Gets the names of all the properties that can appear in a connection string
00038     /// for this feature provider as an array of Strings. The order of the property
00039     /// names in the resulting array dictate the order in which they need to be 
00040     /// specified. This is especially important for the success of the 
00041     /// EnumeratePropertyValues method because properties that occur earlier in the array
00042     /// may be required for successful enumeration of properties that appear later.
00043     /// 
00044     /// \return
00045     /// Returns the list of parameter names
00046     /// 
00047     __property System::String* get_PropertyNames() [];
00048 
00049     /// \brief
00050     /// Gets the value of the specified property.
00051     /// 
00052     /// \param name 
00053     /// Input the property name.
00054     /// 
00055     /// \return
00056     /// Returns the property value.
00057     /// 
00058     System::String* GetProperty(System::String* name);
00059 
00060     /// \brief
00061     /// Sets the value of the specified property. An exception is thrown if the connection is currently open.
00062     /// 
00063     /// \param name 
00064     /// Input the property name
00065     /// \param value 
00066     /// Input the property value
00067     /// 
00068     /// \return
00069     /// Returns nothing
00070     /// 
00071     System::Void SetProperty( System::String* name,  System::String* value);
00072 
00073     /// \brief
00074     /// Gets the default value for the specified property.
00075     /// 
00076     /// \param name 
00077     /// Input the property name
00078     /// 
00079     /// \return
00080     /// Returns the property default value
00081     /// 
00082     System::String* GetPropertyDefault( System::String* name);
00083 
00084     /// \brief
00085     /// Determines if the specified property is required.
00086     /// 
00087     /// \param name 
00088     /// Input the property name
00089     /// 
00090     /// \return
00091     /// Returns true if the specified property is required
00092     /// 
00093     System::Boolean IsPropertyRequired( System::String* name);
00094 
00095     /// \brief
00096     ///  Indicates if the property is a password or other protected field
00097     /// that should be kept secure.
00098     /// 
00099     /// \param name 
00100     /// Input the property name.
00101     /// 
00102     /// \return
00103     /// Returns true if the property is a password or other protected field
00104     /// that should be kept secure.
00105     /// 
00106     System::Boolean IsPropertyProtected(System::String* name);
00107 
00108     /// \brief
00109     /// Determines if the possible values for the specified property can be enumerated via the EnumeratePropertyValues method.
00110     /// 
00111     /// \param name 
00112     /// Input the property name
00113     /// 
00114     /// \return
00115     /// Returns true if the possible values for the specified property can be enumerated.
00116     /// 
00117     System::Boolean IsPropertyEnumerable(System::String* name);
00118 
00119     /// \brief
00120     /// Returns an array of possible values for the specified property.
00121     /// 
00122     /// \param name 
00123     /// Input the property name.
00124     /// 
00125     /// \return
00126     /// Returns the list of values for this property.
00127     /// 
00128     System::String* EnumeratePropertyValues(System::String* name) [];
00129 
00130     /// \brief
00131     /// Gets a localized name for the property (for NLS purposes).
00132     /// 
00133     /// \param name 
00134     /// Input the property name.
00135     /// 
00136     /// \return
00137     /// Returns the localized name for the property (for NLS purposes).
00138     /// 
00139     System::String* GetLocalizedName(System::String* name);
00140 
00141 };
00142 
00143 END_NAMESPACE_OSGEO_FDO_CONNECTIONS
00144 
00145 

Comments or suggestions? Send us feedback.