00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef FDOPOSTGIS_PROPERTYDEFINITION_H_INCLUDED
00018 #define FDOPOSTGIS_PROPERTYDEFINITION_H_INCLUDED
00019
00020 #include <Fdo.h>
00021 #include <PostGIS/Override/ColumnDefinition.h>
00022
00023 namespace fdo { namespace postgis { namespace ov {
00024
00025
00026 class PropertyDefinition : public FdoPhysicalPropertyMapping
00027 {
00028 public:
00029
00030 typedef FdoPtr<PropertyDefinition> Ptr;
00031
00032
00033
00034
00035 FDOPOSTGIS_API static PropertyDefinition* Create();
00036
00037 FDOPOSTGIS_API ColumnDefinition* GetColumn() const;
00038
00039 FDOPOSTGIS_API void SetColumn(ColumnDefinition* columnDef);
00040
00041
00042
00043
00044
00045
00046 FDOPOSTGIS_API virtual void InitFromXml(FdoXmlSaxContext* xmlContext,
00047 FdoXmlAttributeCollection* xmlAttrs);
00048
00049
00050 FDOPOSTGIS_API virtual void _writeXml(FdoXmlWriter* xmlWriter,
00051 FdoXmlFlags const* xmlFlags);
00052
00053
00054
00055
00056
00057
00058
00059 FDOPOSTGIS_API virtual FdoXmlSaxHandler* XmlStartElement(FdoXmlSaxContext *saxContext,
00060 FdoString* uri, FdoString* name, FdoString* qname,
00061 FdoXmlAttributeCollection* xmlAtts);
00062
00063
00064
00065 FDOPOSTGIS_API virtual FdoBoolean XmlEndElement(FdoXmlSaxContext* saxContext,
00066 FdoString* uri, FdoString* name, FdoString* qname);
00067
00068 protected:
00069
00070 PropertyDefinition();
00071 virtual ~PropertyDefinition();
00072
00073
00074
00075
00076
00077 virtual void Dispose();
00078
00079 private:
00080
00081 typedef FdoPhysicalElementMapping BaseType;
00082 };
00083
00084 }}}
00085
00086 #endif // FDOPOSTGIS_PROPERTYDEFINITION_H_INCLUDED