All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
te::xsd::IdentityConstraint Class Referenceabstract

This is the base class for XML Schema elements that are related to identity constraint. More...

#include <IdentityConstraint.h>

Inheritance diagram for te::xsd::IdentityConstraint:
te::xsd::Identifiable te::xsd::Annotated te::xsd::Key te::xsd::KeyRef te::xsd::Unique

Public Member Functions

void addField (Field *f)
 Adds a new field to this element. More...
 
virtual IdentityConstraintclone () const =0
 It clones the object. More...
 
AnnotationgetAnnotation () const
 It returns the associated annotation. More...
 
const boost::ptr_vector< Field > & getFields () const
 It returns the list of Fields elements of this element. More...
 
std::string * getId () const
 It returns a pointer (may be NULL) to the object id. More...
 
std::string * getName () const
 It returns the name of this element. More...
 
SelectorgetSelector () const
 It returns the Selector element of this element. More...
 
 IdentityConstraint (std::string *name, Annotation *ann=0, std::string *id=0)
 Constructor. More...
 
 IdentityConstraint (const IdentityConstraint &rhs)
 Copy constructor. More...
 
IdentityConstraintoperator= (const IdentityConstraint &rhs)
 Assignment operator. More...
 
void setAnnotation (Annotation *ann)
 It sets the associated annotation. More...
 
void setId (std::string *id)
 it sets the id. More...
 
void setName (std::string *name)
 It sets a name for this element. More...
 
void setSelector (Selector *s)
 It sets the Selector element of this element. More...
 
virtual ~IdentityConstraint ()
 Destructor. More...
 

Protected Attributes

boost::ptr_vector< Fieldm_fieldVec
 The list of fields. (Required at least one) More...
 
std::string * m_name
 It specifies the name of this element. (Required) More...
 
Selectorm_selector
 It specified the selector element of this. (Required) More...
 

Detailed Description

This is the base class for XML Schema elements that are related to identity constraint.

Specifically the classes Key, KeyRef and Unique are derived from this base class.

See also
Key, KeyRef, Unique

Definition at line 53 of file IdentityConstraint.h.

Constructor & Destructor Documentation

te::xsd::IdentityConstraint::IdentityConstraint ( std::string *  name,
Annotation ann = 0,
std::string *  id = 0 
)

Constructor.

Parameters
idIt specifies a unique ID for this element. It may be a NULL value.
nameIt specifies the name of this element. It is required a non-NULL value.
Note
The IdentityConstraint object will take the ownership of the id and name pointers.

Definition at line 34 of file IdentityConstraint.cpp.

References m_name.

te::xsd::IdentityConstraint::IdentityConstraint ( const IdentityConstraint rhs)

Copy constructor.

Parameters
rhsRight-hand-side object.

Definition at line 42 of file IdentityConstraint.cpp.

te::xsd::IdentityConstraint::~IdentityConstraint ( )
virtual

Destructor.

Definition at line 46 of file IdentityConstraint.cpp.

Member Function Documentation

void te::xsd::IdentityConstraint::addField ( Field f)

Adds a new field to this element.

Parameters
fThe field that will be added.
Note
The IdentityConstraint object will take the ownership of the given pointer.

Definition at line 85 of file IdentityConstraint.cpp.

virtual IdentityConstraint* te::xsd::IdentityConstraint::clone ( ) const
pure virtual

It clones the object.

Returns
A clone of the object. The caller will take the ownership.

Implemented in te::xsd::KeyRef, te::xsd::Key, and te::xsd::Unique.

te::xsd::Annotation * te::xsd::Annotated::getAnnotation ( ) const
inherited

It returns the associated annotation.

Returns
The associated annotation.

Definition at line 30 of file Annotated.cpp.

References te::xsd::Annotated::m_annotation.

const boost::ptr_vector< te::xsd::Field > & te::xsd::IdentityConstraint::getFields ( ) const

It returns the list of Fields elements of this element.

Returns
The list of Fields.

Definition at line 67 of file IdentityConstraint.cpp.

std::string * te::xsd::Identifiable::getId ( ) const
inherited

It returns a pointer (may be NULL) to the object id.

Definition at line 35 of file Identifiable.cpp.

std::string * te::xsd::IdentityConstraint::getName ( ) const

It returns the name of this element.

Returns
The name of this element.

Definition at line 57 of file IdentityConstraint.cpp.

te::xsd::Selector * te::xsd::IdentityConstraint::getSelector ( ) const

It returns the Selector element of this element.

Returns
The Selector element.

Definition at line 62 of file IdentityConstraint.cpp.

te::xsd::IdentityConstraint & te::xsd::IdentityConstraint::operator= ( const IdentityConstraint rhs)

Assignment operator.

Parameters
rhsRight-hand-side object.
Returns
A reference to this object.

Definition at line 52 of file IdentityConstraint.cpp.

void te::xsd::Annotated::setAnnotation ( Annotation ann)
inherited

It sets the associated annotation.

Parameters
annThe annotation to be associated to the object. The annotated class will take the ownership of the given pointer.

Definition at line 35 of file Annotated.cpp.

Referenced by te::xsd::serialize::ReadAnnotated().

void te::xsd::Identifiable::setId ( std::string *  id)
inherited

it sets the id.

Parameters
idThe id to be associated to the object. It will take the ownership of the given string.

Definition at line 29 of file Identifiable.cpp.

References te::xsd::Identifiable::m_id.

Referenced by te::xsd::serialize::ReadIdentifiable().

void te::xsd::IdentityConstraint::setName ( std::string *  name)

It sets a name for this element.

Parameters
nameA name for this element. Required a non-NULL value.
Note
The IdentityConstraint object will take the ownership of the given pointer.

Definition at line 72 of file IdentityConstraint.cpp.

void te::xsd::IdentityConstraint::setSelector ( Selector s)

It sets the Selector element of this element.

Parameters
sIt specifies the Selector element.
Note
The IdentityConstraint object will take the ownership of the given pointer.

Definition at line 79 of file IdentityConstraint.cpp.

Member Data Documentation

boost::ptr_vector<Field> te::xsd::IdentityConstraint::m_fieldVec
protected

The list of fields. (Required at least one)

Definition at line 147 of file IdentityConstraint.h.

std::string* te::xsd::IdentityConstraint::m_name
protected

It specifies the name of this element. (Required)

Definition at line 145 of file IdentityConstraint.h.

Referenced by IdentityConstraint().

Selector* te::xsd::IdentityConstraint::m_selector
protected

It specified the selector element of this. (Required)

Definition at line 146 of file IdentityConstraint.h.


The documentation for this class was generated from the following files: