00001 /* 00002 * Copyright (C) 2006 SL-King d.o.o 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 #ifndef FdoKgOraPhysicalSchemaMapping_H 00018 #define FdoKgOraPhysicalSchemaMapping_H 00019 00020 #ifdef _WIN32 00021 #pragma once 00022 #endif //_WIN32 00023 00024 #include <KingOracle/Override/FdoKgOraClassCollection.h> 00025 00026 class FdoKgOraPhysicalSchemaMapping : public FdoPhysicalSchemaMapping 00027 { 00028 typedef FdoPhysicalSchemaMapping BaseType; 00029 00030 public: 00031 FDOKGORA_API static FdoKgOraPhysicalSchemaMapping* Create(); 00032 00033 FDOKGORA_API virtual FdoString* GetProvider(); 00034 FDOKGORA_API FdoKgOraClassCollection* GetClasses() const; 00035 00036 FDOKGORA_API virtual void InitFromXml(FdoXmlSaxContext* Context, FdoXmlAttributeCollection* Attrs); 00037 FDOKGORA_API virtual FdoXmlSaxHandler* XmlStartElement(FdoXmlSaxContext* Context,FdoString* Uri, FdoString* Name, FdoString* QName, FdoXmlAttributeCollection* Attrs); 00038 FDOKGORA_API virtual FdoBoolean XmlEndElement(FdoXmlSaxContext* Context, FdoString* Uri, FdoString* Name, FdoString* QName); 00039 FDOKGORA_API virtual void _writeXml(FdoXmlWriter* Writer, const FdoXmlFlags* Flags); 00040 00041 /// find using classname: 00042 FDOKGORA_API FdoKgOraClassDefinition* FindByClassName(FdoString *ClassName); 00043 00044 protected: 00045 FdoKgOraPhysicalSchemaMapping(void); 00046 virtual ~FdoKgOraPhysicalSchemaMapping(void); 00047 virtual void Dispose(void); 00048 00049 private: 00050 FdoKgOraClassCollectionP m_Classes; 00051 }; 00052 00053 typedef FdoPtr<FdoKgOraPhysicalSchemaMapping> FdoKgOraPhysicalSchemaMappingP; 00054 00055 #endif // FdoKgOraPhysicalSchemaMapping_H 00056 00057