Autodesk FDO Provider for SQL Server API Reference

SQLServer Provider API

API Reference Autodesk FDO Provider for SQL Server

SqlServerOvTable.h

Go to the documentation of this file.
00001 #ifndef FDO_SqlServerOVTABLE_H
00002 #define FDO_SqlServerOVTABLE_H
00003 //
00004 //
00005 // (C) Copyright 1990-2005 by Autodesk, Inc.
00006 //
00007 //
00008 //
00009 // By using this code, you are agreeing to the terms
00010 // and conditions of the License Agreement that appeared
00011 // and was accepted upon download or installation
00012 // (or in connection with the download or installation)
00013 // of the Autodesk software in which this code is included.
00014 // All permissions on use of this code are as set forth
00015 // in such License Agreement provided that the above copyright
00016 // notice appears in all authorized copies and that both that
00017 // copyright notice and the limited warranty and
00018 // restricted rights notice below appear in all supporting
00019 // documentation.
00020 //
00021 // AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
00022 // AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
00023 // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE.  AUTODESK, INC.
00024 // DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
00025 // UNINTERRUPTED OR ERROR FREE.
00026 //
00027 // Use, duplication, or disclosure by the U.S. Government is subject to
00028 // restrictions set forth in FAR 52.227-19 (Commercial Computer
00029 // Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
00030 // (Rights in Technical Data and Computer Software), as applicable.
00031 //
00032 #include <Rdbms/Override/RdbmsOvTable.h>
00033 #include <Rdbms/Override/SqlServer/SqlServerOv.h>
00034 #include <Rdbms/Override/SqlServer/SqlServerOvTextInRowOption.h>
00035 
00036 
00037 /// \brief
00038 /// Concrete class defining physical schema overrides for a table.
00039 class FdoSqlServerOvTable : public FdoRdbmsOvTable
00040 {
00041 
00042 public:
00043     /// \brief
00044     /// Constructs a default of an FdoSqlServerOvTable
00045     /// 
00046     /// \return
00047     /// Returns FdoSqlServerOvTable
00048     /// 
00049     FDOSQLSERVER_OV_API static FdoSqlServerOvTable* Create();
00050 
00051     /// \brief
00052     /// Constructs an instance of an FdoSqlServerOvTable using the specified arguments
00053     /// 
00054     /// \param name 
00055     /// Input name
00056     /// 
00057     /// \return
00058     /// Returns FdoSqlServerOvTable
00059     /// 
00060     FDOSQLSERVER_OV_API static FdoSqlServerOvTable* Create(FdoString *name);
00061 
00062     /// \brief
00063     /// Gets the table filegroup
00064     /// 
00065     /// \return
00066     /// Returns the table filegroup
00067     /// 
00068     FDOSQLSERVER_OV_API FdoString *GetTableFilegroup();
00069 
00070     /// \brief
00071     /// Sets the table filegroup
00072     /// 
00073     /// \return
00074     /// Returns nothing
00075     /// 
00076     FDOSQLSERVER_OV_API void SetTableFilegroup(FdoString *tableFilegroup);
00077 
00078     /// \brief
00079     /// Gets the text filegroup
00080     /// 
00081     /// \return
00082     /// Returns the text filegroup
00083     /// 
00084     FDOSQLSERVER_OV_API FdoString *GetTextFilegroup();
00085 
00086     /// \brief
00087     /// Sets the text filegroup
00088     /// 
00089     /// \return
00090     /// Returns nothing
00091     /// 
00092     FDOSQLSERVER_OV_API void SetTextFilegroup(FdoString *textFilegroup);
00093 
00094     /// \brief
00095     /// Gets the index filegroup
00096     /// 
00097     /// \return
00098     /// Returns the index filegroup
00099     /// 
00100     FDOSQLSERVER_OV_API FdoString *GetIndexFilegroup();
00101 
00102     /// \brief
00103     /// Sets the index filegroup
00104     /// 
00105     /// \return
00106     /// Returns nothing
00107     /// 
00108     FDOSQLSERVER_OV_API void SetIndexFilegroup(FdoString *indexFilegroup);
00109 
00110     /// \brief
00111     /// Gets the text-in-row option
00112     /// 
00113     /// \return
00114     /// Returns the text-in-row option
00115     /// 
00116     FDOSQLSERVER_OV_API SqlServerOvTextInRowOption GetTextInRow();
00117 
00118     /// \brief
00119     /// Sets the text-in-row option
00120     /// 
00121     /// \return
00122     /// Returns nothing
00123     /// 
00124     FDOSQLSERVER_OV_API void SetTextInRow(SqlServerOvTextInRowOption textInRow);
00125 
00126     /// \brief
00127     /// Gets the database
00128     /// 
00129     /// \return
00130     /// Returns the database
00131     /// 
00132     FDOSQLSERVER_OV_API FdoString *GetDatabase();
00133 
00134     /// \brief
00135     /// Sets the database
00136     /// 
00137     /// \return
00138     /// Returns nothing
00139     /// 
00140     FDOSQLSERVER_OV_API void SetDatabase(FdoString *database);
00141 
00142     /// \brief
00143     /// Gets the owner
00144     /// 
00145     /// \return
00146     /// Returns the owner
00147     /// 
00148     FDOSQLSERVER_OV_API FdoString *GetOwner();
00149 
00150     /// \brief
00151     /// Sets the owner
00152     /// 
00153     /// \return
00154     /// Returns nothing
00155     /// 
00156     FDOSQLSERVER_OV_API void SetOwner(FdoString *owner);
00157 
00158 
00159 /// \cond DOXYGEN-IGNORE
00160 
00161     /// XML Serialization functions, not part of the API.
00162 
00163     /// Serialize this property to XML.
00164     virtual void _writeXmlContents(FdoXmlWriter* xmlWriter, const FdoXmlFlags* flags);
00165 
00166     /// Initialize this element from its XML attributes
00167     virtual void InitFromXml(FdoXmlSaxContext* pContext, FdoXmlAttributeCollection* attrs);
00168 
00169     /// Sets the parent of this object. Not part of the API.
00170     void SetParent(FdoPhysicalElementMapping* value);
00171 
00172     /// Common initializer for all constructors:
00173     void Init();
00174 
00175 /// \endcond
00176 
00177 protected:
00178     FdoSqlServerOvTable();
00179     FdoSqlServerOvTable(FdoString *name);
00180     virtual ~FdoSqlServerOvTable();
00181     virtual void Dispose();
00182 
00183 private:
00184     FdoStringP                  mTableFilegroup;
00185     FdoStringP                  mTextFilegroup;
00186     FdoStringP                  mIndexFilegroup;
00187     SqlServerOvTextInRowOption  mTextInRow;
00188     FdoStringP                  mDatabase;
00189     FdoStringP                  mOwner;
00190 };
00191 
00192 /// \brief
00193 /// FdoSqlServerOvTableP is a FdoPtr on FdoSqlServerOvTable, provided for convenience.
00194 typedef FdoPtr<FdoSqlServerOvTable> FdoSqlServerOvTableP;
00195 
00196 #endif
00197 
00198 

Comments?