00001 //
00002 // Copyright (C) 2004-2008 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 #pragma once
00019
00020 class FdoSqlServerOvPhysicalSchemaMapping;
00021
00022 BEGIN_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_SQLSERVERSPATIAL
00023 public __gc class OvClassCollection;
00024
00025 /// <summary>Concrete class defining physical schema overrides for a table.</summary>
00026 public __gc class OvPhysicalSchemaMapping : public NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE::OvPhysicalSchemaMapping
00027 {
00028 public:
00029 /// <summary>Constructs a default of an FdoSqlServerOvPhysicalSchemaMapping</summary>
00030 OvPhysicalSchemaMapping();
00031
00032 /// <summary>Constructs a physical schema mapping instance using the
00033 /// result returned from IConnection::CreateSchemaMapping OR using the result of
00034 /// executing an IDescribeSchemaMapping command. This constructor is provided
00035 /// in order that clients are provided a mechanism to downcast from the FDO
00036 /// PhysicalSchemaMapping base class to an FDO Provider specific class
00037 /// that derives from PhysicalSchemaMapping. This constructor is the only
00038 /// mechanism provided by the FDO Managed API that will allow the client to correctly
00039 /// construct a provider specific PhysicalSchemaMapping class.
00040 /// NOTE: If the Provider name associated to the input parameter schemaMapping does not
00041 /// correspond to the provider name of the expected FDO Provider, and InvalidArgumentException
00042 /// will be thrown.
00043 /// </summary>
00044 OvPhysicalSchemaMapping(NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA::PhysicalSchemaMapping* schemaMapping, System::Boolean autoDelete);
00045
00046 /// <summary>Constructs an instance of an FdoSqlServerOvPhysicalSchemaMapping using the specified arguments</summary>
00047 /// <param name="name">Input name</param>
00048 OvPhysicalSchemaMapping(System::String* name);
00049
00050 /// <summary>Gets the classes</summary>
00051 /// <returns>Returns the classes</returns>
00052 __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_SQLSERVERSPATIAL::OvClassCollection* get_Classes();
00053
00054 /// <summary>Gets the table Filegroup</summary>
00055 /// <returns>Returns the table Filegroup</returns>
00056 __property System::String* get_TableFilegroup();
00057
00058 /// <summary>Sets the table Filegroup</summary>
00059 /// <returns>Returns nothing</returns>
00060 __property System::Void set_TableFilegroup(System::String* tableFileGroup);
00061
00062 /// <summary>Gets the text Filegroup</summary>
00063 /// <returns>Returns the text Filegroup</returns>
00064 __property System::String* get_TextFilegroup();
00065
00066 ///<summary>Sets the text Filegroup</summary>
00067 /// <returns>Returns nothing</returns>
00068 __property System::Void set_TextFilegroup(System::String* textFileGroup);
00069
00070 /// <summary>Gets the index Filegroup</summary>
00071 /// <returns>Returns the index Filegroup</returns>
00072 __property System::String* get_IndexFilegroup();
00073
00074 /// <summary>Sets the index Filegroup</summary>
00075 /// <returns>Returns nothing</returns>
00076 __property System::Void set_IndexFilegroup(System::String* indexFileGroup);
00077
00078 /// <summary>Gets the text-in-row option</summary>
00079 /// <returns>Returns the text-in-row option</returns>
00080 __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_SQLSERVERSPATIAL::OvTextInRowOption get_TextInRow();
00081
00082 /// <summary>Sets the text-in-row option</summary>
00083 /// <returns>Returns nothing</returns>
00084 __property System::Void set_TextInRow(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_SQLSERVERSPATIAL::OvTextInRowOption textInRow);
00085
00086 /// <summary>Gets the database</summary>
00087 /// <returns>Returns the database</returns>
00088 __property System::String* get_Database();
00089
00090 /// <summary>Sets the database</summary>
00091 /// <returns>Returns nothing</returns>
00092 __property System::Void set_Database(System::String* database);
00093
00094 /// <summary>Gets the owner</summary>
00095 /// <returns>Returns the owner</returns>
00096 __property System::String* get_Owner();
00097
00098 /// <summary>Sets the owner</summary>
00099 /// <returns>Returns nothing</returns>
00100 __property System::Void set_Owner(System::String* owner);
00101
00102 public private:
00103 OvPhysicalSchemaMapping(System::IntPtr unmanaged, System::Boolean autoDelete);
00104
00105 inline FdoSqlServerOvPhysicalSchemaMapping* GetImpObj();
00106 };
00107
00108 END_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_SQLSERVERSPATIAL