FDO API Reference Feature Data Objects
Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

FdoSchemaElement Class Reference

#include <SchemaElement.h>

Inherits FdoIDisposable, and FdoXmlSaxHandler.

Inherited by FdoClassDefinition, FdoFeatureSchema, and FdoPropertyDefinition.

Inheritance diagram for FdoSchemaElement:

[legend]
List of all members.

Detailed Description

FdoSchemaElement is an abstract class that acts as a base class for all classes in the Schema package.

Definition at line 40 of file SchemaElement.h.


Public Member Functions

virtual FDO_API FdoBoolean CanSetName ()
 Indicates that this object allows its name to change. This function is defined so that this class can be a FdoNamedCollection element.
virtual void CheckReferences (FdoSchemaMergeContext *pContext)
FDO_API void Delete ()
 Marks the schema element for deletion by setting the element state to FdoSchemaElementState_Deleted. If the schema elements current state is FdoSchemaElementState_Added then the element is physically removed. If the current state is FdoSchemaElementState_Detached this method does nothing.
FDO_API FdoSchemaAttributeDictionaryGetAttributes ()
 Gets an FdoSchemaAttributeDictionary that contains the attributes associated with this FdoSchemaElement.
virtual FDO_API FdoStringGetDescription ()
 Gets the description of the schema object.
FDO_API FdoSchemaElementState GetElementState ()
 Returns the current state of the schema element.
virtual FDO_API FdoFeatureSchemaGetFeatureSchema ()
 Gets the FdoFeatureSchema this object is a part of. Returns null if this object has not been added to a feature schema.
virtual FDO_API FdoStringGetName ()
 Gets the name of the schema object.
virtual FDO_API FdoSchemaElementGetParent ()
 Gets the parent of this FdoSchemaElement or null if this object has not been added to a parent object.
virtual FDO_API FdoStringP GetQualifiedName ()
 Gets the fully qualified name of this schema element.
virtual void InitFromXml (FdoSchemaXmlContext *pContext, FdoXmlAttributeCollection *attrs)
 Initialize this property from its XML attributes.
virtual void Set (FdoSchemaElement *pElement, FdoSchemaMergeContext *pContext)
 DOXYGEN-IGNORE
virtual FDO_API void SetDescription (FdoString *value)
 Sets the description of the schema object.
virtual FDO_API void SetName (FdoString *value)
 Sets the name of the schema object.
virtual FdoBoolean XmlEndElement (FdoXmlSaxContext *context, FdoString *uri, FdoString *name, FdoString *qname)
 Handle the end of a sub-element.
virtual FdoXmlSaxHandlerXmlStartElement (FdoXmlSaxContext *context, FdoString *uri, FdoString *name, FdoString *qname, FdoXmlAttributeCollection *atts)
 Handle the start of a sub-element.

Protected Member Functions

virtual void _AcceptChanges ()
virtual void _BeginChangeProcessing ()
virtual void _EndChangeProcessing ()
virtual void _RejectChanges ()
virtual void _StartChanges ()
 FdoFeatureSchema::RejectChanges() support.
virtual void _writeXml (FdoSchemaXmlContext *pContext)
 Write this element to XML.
 FdoSchemaElement (FdoString *name, FdoString *description)
 Constructs an instance of an FdoSchemaElement using the specified arguments.
 FdoSchemaElement ()
 Constructs a default instance of an FdoSchemaElement.
virtual bool IsProperty (const FdoPropertyDefinition *property)
 Is this a property of this element?
virtual bool IsSubClass ()
 Does this element have a base class?
virtual void PropertyRemoved (const FdoPropertyDefinition *property)
 Notification method called whenever a property of this element is removed.
void SetElementState (FdoSchemaElementState value)
virtual void SetParent (FdoSchemaElement *value)
void VldName (FdoString *name)
virtual ~FdoSchemaElement ()

Protected Attributes

unsigned int m_changeInfoState
wchar_t * m_descriptionCHANGED
wchar_t * m_nameCHANGED
FdoSchemaElementm_parentCHANGED
FdoXmlCharDataHandlerP m_XmlContentHandler
 SAX Handler for reading simple sub-element contents.
FdoPtr< FdoSchemaXmlError > m_XmlErrorHandler

Static Protected Attributes

const unsigned int CHANGEINFO_PRESENT = 0x00000001
 States stored in the m_changeInfoState bitfield flag.
const unsigned int CHANGEINFO_PROCESSED = 0x00000004
const unsigned int CHANGEINFO_PROCESSING = 0x00000002

Friends

class FdoDataPropertyDefinitionCollection
class FdoFeatureSchema
class FdoNetworkFeatureClass
class FdoNetworkLinkFeatureClass
class FdoNetworkNodeFeatureClass
class FdoPropertyDefinitionCollection
class FdoSchemaAttributeDictionary
class FdoSchemaCollection

Constructor & Destructor Documentation

FdoSchemaElement::FdoSchemaElement  )  [protected]
 

Constructs a default instance of an FdoSchemaElement.

FdoSchemaElement::FdoSchemaElement FdoString name,
FdoString description
[protected]
 

Constructs an instance of an FdoSchemaElement using the specified arguments.

virtual FdoSchemaElement::~FdoSchemaElement  )  [protected, virtual]
 


Member Function Documentation

virtual void FdoSchemaElement::_AcceptChanges  )  [protected, virtual]
 

Reimplemented in FdoAssociationPropertyDefinition, FdoClassDefinition, FdoDataPropertyDefinition, FdoFeatureClass, FdoGeometricPropertyDefinition, FdoNetworkClass, FdoNetworkFeatureClass, FdoNetworkLayerClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, FdoObjectPropertyDefinition, FdoRasterPropertyDefinition, FdoTopoFeaturePropertyDefinition, FdoTopoGeometryPropertyDefinition, and FdoTopology.

Referenced by FdoSchemaCollection< FdoDataPropertyDefinition >::_AcceptChanges().

virtual void FdoSchemaElement::_BeginChangeProcessing  )  [protected, virtual]
 

Reimplemented in FdoAssociationPropertyDefinition, FdoClassDefinition, FdoFeatureClass, FdoNetworkClass, FdoNetworkFeatureClass, FdoNetworkLayerClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, FdoObjectPropertyDefinition, FdoTopoFeaturePropertyDefinition, FdoTopoGeometryPropertyDefinition, and FdoTopology.

virtual void FdoSchemaElement::_EndChangeProcessing  )  [protected, virtual]
 

Reimplemented in FdoAssociationPropertyDefinition, FdoClassDefinition, FdoFeatureClass, FdoNetworkClass, FdoNetworkFeatureClass, FdoNetworkLayerClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, FdoObjectPropertyDefinition, FdoTopoFeaturePropertyDefinition, FdoTopoGeometryPropertyDefinition, and FdoTopology.

virtual void FdoSchemaElement::_RejectChanges  )  [protected, virtual]
 

Reimplemented in FdoAssociationPropertyDefinition, FdoClassDefinition, FdoDataPropertyDefinition, FdoFeatureClass, FdoGeometricPropertyDefinition, FdoNetworkClass, FdoNetworkFeatureClass, FdoNetworkLayerClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, FdoObjectPropertyDefinition, FdoRasterPropertyDefinition, FdoTopoFeaturePropertyDefinition, FdoTopoGeometryPropertyDefinition, and FdoTopology.

virtual void FdoSchemaElement::_StartChanges  )  [protected, virtual]
 

FdoFeatureSchema::RejectChanges() support.

Reimplemented in FdoAssociationPropertyDefinition, FdoClassDefinition, FdoDataPropertyDefinition, FdoFeatureClass, FdoGeometricPropertyDefinition, FdoNetworkClass, FdoNetworkFeatureClass, FdoNetworkLayerClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, FdoObjectPropertyDefinition, FdoRasterPropertyDefinition, FdoTopoFeaturePropertyDefinition, FdoTopoGeometryPropertyDefinition, and FdoTopology.

virtual void FdoSchemaElement::_writeXml FdoSchemaXmlContext *  pContext  )  [protected, virtual]
 

Write this element to XML.

Reimplemented in FdoAssociationPropertyDefinition, FdoClass, FdoClassDefinition, FdoDataPropertyDefinition, FdoFeatureClass, FdoFeatureSchema, FdoGeometricPropertyDefinition, FdoNetworkClass, FdoNetworkFeatureClass, FdoNetworkLayerClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, FdoObjectPropertyDefinition, FdoPropertyDefinition, FdoRasterPropertyDefinition, FdoTopoFeaturePropertyDefinition, and FdoTopoGeometryPropertyDefinition.

virtual FDO_API FdoBoolean FdoSchemaElement::CanSetName  )  [inline, virtual]
 

Indicates that this object allows its name to change. This function is defined so that this class can be a FdoNamedCollection element.

Returns:
Returns true

Definition at line 138 of file SchemaElement.h.

References FDO_API, and FdoBoolean.

virtual void FdoSchemaElement::CheckReferences FdoSchemaMergeContext pContext  )  [virtual]
 

Reimplemented in FdoAssociationPropertyDefinition, FdoClassDefinition, FdoFeatureClass, FdoFeatureSchema, FdoNetworkClass, FdoNetworkFeatureClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, and FdoObjectPropertyDefinition.

FDO_API void FdoSchemaElement::Delete  ) 
 

Marks the schema element for deletion by setting the element state to FdoSchemaElementState_Deleted. If the schema elements current state is FdoSchemaElementState_Added then the element is physically removed. If the current state is FdoSchemaElementState_Detached this method does nothing.

Returns:
Returns nothing

FDO_API FdoSchemaAttributeDictionary* FdoSchemaElement::GetAttributes  ) 
 

Gets an FdoSchemaAttributeDictionary that contains the attributes associated with this FdoSchemaElement.

Returns:
Returns an FdoSchemaAttributeDictionary

virtual FDO_API FdoString* FdoSchemaElement::GetDescription  )  [virtual]
 

Gets the description of the schema object.

Returns:
Returns the description of the schema object

FDO_API FdoSchemaElementState FdoSchemaElement::GetElementState  ) 
 

Returns the current state of the schema element.

Returns:
Returns the current state of the schema element

virtual FDO_API FdoFeatureSchema* FdoSchemaElement::GetFeatureSchema  )  [virtual]
 

Gets the FdoFeatureSchema this object is a part of. Returns null if this object has not been added to a feature schema.

Returns:
Returns FdoFeatureSchema this object is a part of

virtual FDO_API FdoString* FdoSchemaElement::GetName  )  [virtual]
 

Gets the name of the schema object.

Returns:
Returns the name of the schema object

virtual FDO_API FdoSchemaElement* FdoSchemaElement::GetParent  )  [virtual]
 

Gets the parent of this FdoSchemaElement or null if this object has not been added to a parent object.

Returns:
Returns FdoSchemaElement of parent

Referenced by FdoSchemaCollection< FdoDataPropertyDefinition >::SetItem().

virtual FDO_API FdoStringP FdoSchemaElement::GetQualifiedName  )  [virtual]
 

Gets the fully qualified name of this schema element.

Returns:
Default implementation simply returns the element name

Reimplemented in FdoClassDefinition, and FdoPropertyDefinition.

virtual void FdoSchemaElement::InitFromXml FdoSchemaXmlContext *  pContext,
FdoXmlAttributeCollection attrs
[virtual]
 

Initialize this property from its XML attributes.

Reimplemented in FdoClassDefinition, FdoNetworkFeatureClass, FdoPropertyDefinition, FdoTopoFeaturePropertyDefinition, and FdoTopoGeometryPropertyDefinition.

virtual bool FdoSchemaElement::IsProperty const FdoPropertyDefinition property  )  [protected, virtual]
 

Is this a property of this element?

Reimplemented in FdoClassDefinition.

virtual bool FdoSchemaElement::IsSubClass  )  [protected, virtual]
 

Does this element have a base class?

Reimplemented in FdoClassDefinition.

virtual void FdoSchemaElement::PropertyRemoved const FdoPropertyDefinition property  )  [protected, virtual]
 

Notification method called whenever a property of this element is removed.

Reimplemented in FdoClassDefinition.

virtual void FdoSchemaElement::Set FdoSchemaElement pElement,
FdoSchemaMergeContext pContext
[virtual]
 

DOXYGEN-IGNORE

virtual FDO_API void FdoSchemaElement::SetDescription FdoString value  )  [virtual]
 

Sets the description of the schema object.

Parameters:
value Input the description of the schema object
Returns:
Returns nothing

void FdoSchemaElement::SetElementState FdoSchemaElementState  value  )  [protected]
 

Sets the current state of the schema element. This is a package private method that can only be called from within the Schema package.

Referenced by FdoSchemaCollection< FdoDataPropertyDefinition >::_StartChanges().

virtual FDO_API void FdoSchemaElement::SetName FdoString value  )  [virtual]
 

Sets the name of the schema object.

Parameters:
value Input the name of the schema object
Returns:
Returns nothing

virtual void FdoSchemaElement::SetParent FdoSchemaElement value  )  [protected, virtual]
 

Sets the parent of this SchemaObject. Can only be called from within the Schema package.

Reimplemented in FdoAssociationPropertyDefinition.

Referenced by FdoSchemaCollection< FdoDataPropertyDefinition >::~FdoSchemaCollection().

void FdoSchemaElement::VldName FdoString name  )  [protected]
 

Throws an exception if the given name is not a valid schema element name.

virtual FdoBoolean FdoSchemaElement::XmlEndElement FdoXmlSaxContext context,
FdoString uri,
FdoString name,
FdoString qname
[virtual]
 

Handle the end of a sub-element.

Reimplemented from FdoXmlSaxHandler.

Reimplemented in FdoAssociationPropertyDefinition, FdoClassDefinition, FdoDataPropertyDefinition, FdoGeometricPropertyDefinition, FdoNetworkFeatureClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, FdoTopoFeaturePropertyDefinition, and FdoTopoGeometryPropertyDefinition.

virtual FdoXmlSaxHandler* FdoSchemaElement::XmlStartElement FdoXmlSaxContext context,
FdoString uri,
FdoString name,
FdoString qname,
FdoXmlAttributeCollection atts
[virtual]
 

Handle the start of a sub-element.

Reimplemented from FdoXmlSaxHandler.

Reimplemented in FdoAssociationPropertyDefinition, FdoClassDefinition, FdoDataPropertyDefinition, FdoFeatureSchema, FdoGeometricPropertyDefinition, FdoNetworkFeatureClass, FdoNetworkLinkFeatureClass, FdoNetworkNodeFeatureClass, FdoTopoFeaturePropertyDefinition, and FdoTopoGeometryPropertyDefinition.


Friends And Related Function Documentation

friend class FdoDataPropertyDefinitionCollection [friend]
 

Definition at line 48 of file SchemaElement.h.

friend class FdoFeatureSchema [friend]
 

Definition at line 44 of file SchemaElement.h.

friend class FdoNetworkFeatureClass [friend]
 

Definition at line 50 of file SchemaElement.h.

friend class FdoNetworkLinkFeatureClass [friend]
 

Definition at line 51 of file SchemaElement.h.

friend class FdoNetworkNodeFeatureClass [friend]
 

Definition at line 49 of file SchemaElement.h.

friend class FdoPropertyDefinitionCollection [friend]
 

Definition at line 47 of file SchemaElement.h.

friend class FdoSchemaAttributeDictionary [friend]
 

Definition at line 46 of file SchemaElement.h.

friend class FdoSchemaCollection [friend]
 

Reimplemented in FdoClassDefinition, FdoDataPropertyDefinition, and FdoFeatureClass.

Definition at line 45 of file SchemaElement.h.


Member Data Documentation

const unsigned int FdoSchemaElement::CHANGEINFO_PRESENT = 0x00000001 [static, protected]
 

States stored in the m_changeInfoState bitfield flag.

Definition at line 256 of file SchemaElement.h.

const unsigned int FdoSchemaElement::CHANGEINFO_PROCESSED = 0x00000004 [static, protected]
 

Definition at line 258 of file SchemaElement.h.

const unsigned int FdoSchemaElement::CHANGEINFO_PROCESSING = 0x00000002 [static, protected]
 

Definition at line 257 of file SchemaElement.h.

unsigned int FdoSchemaElement::m_changeInfoState [protected]
 

Definition at line 250 of file SchemaElement.h.

wchar_t* FdoSchemaElement::m_descriptionCHANGED [protected]
 

Definition at line 253 of file SchemaElement.h.

wchar_t* FdoSchemaElement::m_nameCHANGED [protected]
 

Definition at line 252 of file SchemaElement.h.

FdoSchemaElement* FdoSchemaElement::m_parentCHANGED [protected]
 

Definition at line 251 of file SchemaElement.h.

FdoXmlCharDataHandlerP FdoSchemaElement::m_XmlContentHandler [protected]
 

SAX Handler for reading simple sub-element contents.

Definition at line 261 of file SchemaElement.h.

FdoPtr<FdoSchemaXmlError> FdoSchemaElement::m_XmlErrorHandler [protected]
 

SAX Handler for reading error sub-elements Errors are generated by the XSL transformation that converts the Feature Schema XML from external to internal format before it is read.

Definition at line 267 of file SchemaElement.h.


The documentation for this class was generated from the following file:
Comments or suggestions? Send us feedback.