OSGeo FDO Provider for MySQL API Reference

OSGeo FDO Provider for MySQL API

API Reference OSGeo FDO Provider for MySQL

SqlServerOvTable.h

Go to the documentation of this file.
00001 #ifndef FDO_SqlServerOVTABLE_H
00002 #define FDO_SqlServerOVTABLE_H
00003 /*
00004  * Copyright (C) 2004-2008  Autodesk, Inc.
00005  * 
00006  * This library is free software; you can redistribute it and/or
00007  * modify it under the terms of version 2.1 of the GNU Lesser
00008  * General Public License as published by the Free Software Foundation.
00009  * 
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Lesser General Public License for more details.
00014  * 
00015  * You should have received a copy of the GNU Lesser General Public
00016  * License along with this library; if not, write to the Free Software
00017  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00018  *
00019  */
00020 
00021 #include <Rdbms/Override/RdbmsOvTable.h>
00022 #include <Rdbms/Override/SQLServerSpatial/SqlServerOv.h>
00023 #include <Rdbms/Override/SQLServerSpatial/SqlServerOvTextInRowOption.h>
00024 
00025 
00026 /// \brief
00027 /// Concrete class defining physical schema overrides for a table.
00028 class FdoSqlServerOvTable : public FdoRdbmsOvTable
00029 {
00030 
00031 public:
00032     /// \brief
00033     /// Constructs a default of an FdoSqlServerOvTable
00034     /// 
00035     /// \return
00036     /// Returns FdoSqlServerOvTable
00037     /// 
00038     FDOSQLSERVER_OV_API static FdoSqlServerOvTable* Create();
00039 
00040     /// \brief
00041     /// Constructs an instance of an FdoSqlServerOvTable using the specified arguments
00042     /// 
00043     /// \param name 
00044     /// Input name
00045     /// 
00046     /// \return
00047     /// Returns FdoSqlServerOvTable
00048     /// 
00049     FDOSQLSERVER_OV_API static FdoSqlServerOvTable* Create(FdoString *name);
00050 
00051     /// \brief
00052     /// Gets the table filegroup
00053     /// 
00054     /// \return
00055     /// Returns the table filegroup
00056     /// 
00057     FDOSQLSERVER_OV_API FdoString *GetTableFilegroup();
00058 
00059     /// \brief
00060     /// Sets the table filegroup
00061     /// 
00062     /// \return
00063     /// Returns nothing
00064     /// 
00065     FDOSQLSERVER_OV_API void SetTableFilegroup(FdoString *tableFilegroup);
00066 
00067     /// \brief
00068     /// Gets the text filegroup
00069     /// 
00070     /// \return
00071     /// Returns the text filegroup
00072     /// 
00073     FDOSQLSERVER_OV_API FdoString *GetTextFilegroup();
00074 
00075     /// \brief
00076     /// Sets the text filegroup
00077     /// 
00078     /// \return
00079     /// Returns nothing
00080     /// 
00081     FDOSQLSERVER_OV_API void SetTextFilegroup(FdoString *textFilegroup);
00082 
00083     /// \brief
00084     /// Gets the index filegroup
00085     /// 
00086     /// \return
00087     /// Returns the index filegroup
00088     /// 
00089     FDOSQLSERVER_OV_API FdoString *GetIndexFilegroup();
00090 
00091     /// \brief
00092     /// Sets the index filegroup
00093     /// 
00094     /// \return
00095     /// Returns nothing
00096     /// 
00097     FDOSQLSERVER_OV_API void SetIndexFilegroup(FdoString *indexFilegroup);
00098 
00099     /// \brief
00100     /// Gets the text-in-row option
00101     /// 
00102     /// \return
00103     /// Returns the text-in-row option
00104     /// 
00105     FDOSQLSERVER_OV_API SqlServerOvTextInRowOption GetTextInRow();
00106 
00107     /// \brief
00108     /// Sets the text-in-row option
00109     /// 
00110     /// \return
00111     /// Returns nothing
00112     /// 
00113     FDOSQLSERVER_OV_API void SetTextInRow(SqlServerOvTextInRowOption textInRow);
00114 
00115     /// \brief
00116     /// Gets the database
00117     /// 
00118     /// \return
00119     /// Returns the database
00120     /// 
00121     FDOSQLSERVER_OV_API FdoString *GetDatabase();
00122 
00123     /// \brief
00124     /// Sets the database
00125     /// 
00126     /// \return
00127     /// Returns nothing
00128     /// 
00129     FDOSQLSERVER_OV_API void SetDatabase(FdoString *database);
00130 
00131     /// \brief
00132     /// Gets the owner
00133     /// 
00134     /// \return
00135     /// Returns the owner
00136     /// 
00137     FDOSQLSERVER_OV_API FdoString *GetOwner();
00138 
00139     /// \brief
00140     /// Sets the owner
00141     /// 
00142     /// \return
00143     /// Returns nothing
00144     /// 
00145     FDOSQLSERVER_OV_API void SetOwner(FdoString *owner);
00146 
00147 
00148 /// \cond DOXYGEN-IGNORE
00149 
00150     /// XML Serialization functions, not part of the API.
00151 
00152     /// Serialize this property to XML.
00153     virtual void _writeXmlContents(FdoXmlWriter* xmlWriter, const FdoXmlFlags* flags);
00154 
00155     /// Initialize this element from its XML attributes
00156     virtual void InitFromXml(FdoXmlSaxContext* pContext, FdoXmlAttributeCollection* attrs);
00157 
00158     /// Sets the parent of this object. Not part of the API.
00159     void SetParent(FdoPhysicalElementMapping* value);
00160 
00161     /// Common initializer for all constructors:
00162     void Init();
00163 
00164 /// \endcond
00165 
00166 protected:
00167     FdoSqlServerOvTable();
00168     FdoSqlServerOvTable(FdoString *name);
00169     virtual ~FdoSqlServerOvTable();
00170     virtual void Dispose();
00171 
00172 private:
00173     FdoStringP                  mTableFilegroup;
00174     FdoStringP                  mTextFilegroup;
00175     FdoStringP                  mIndexFilegroup;
00176     SqlServerOvTextInRowOption  mTextInRow;
00177     FdoStringP                  mDatabase;
00178     FdoStringP                  mOwner;
00179 };
00180 
00181 /// \brief
00182 /// FdoSqlServerOvTableP is a FdoPtr on FdoSqlServerOvTable, provided for convenience.
00183 typedef FdoPtr<FdoSqlServerOvTable> FdoSqlServerOvTableP;
00184 
00185 #endif
00186 
00187 

Comments?