te::dt::ArrayProperty Class Reference

The type for variable-length multidimensional arrays. More...

#include <ArrayProperty.h>

Inheritance diagram for te::dt::ArrayProperty:
te::dt::SimpleProperty te::dt::Property

Public Member Functions

 ArrayProperty (const std::string &name, Property *elementType, bool isRequired=false, std::string *defaultValue=0, unsigned int id=0, Property *parent=0)
 It constructs a new property for array data type. More...
 
 ArrayProperty (const ArrayProperty &rhs)
 Copy constructor. More...
 
Propertyclone () const
 It returns a clone of the object. More...
 
const std::string & getDatasetName () const
 It returns the name of the propery's dataset. More...
 
std::string * getDefaultValue () const
 It returns the default value associated to the property, or NULL if none is associated. More...
 
PropertygetElementType () const
 It returns the type of array elements. More...
 
unsigned int getId () const
 It returns the property identifier. More...
 
const std::string & getName () const
 It returns the property name. More...
 
PropertygetParent () const
 It returns the parent of this property, or NULL, if it doesn't have one. More...
 
int getType () const
 It returns the property data type. More...
 
bool has (Property *p) const
 It checks if the Property "p" is associated to this property or any other parent. More...
 
bool isAutoNumber () const
 It returns true if the attribute is an autonumber, otherwise it returns false. More...
 
bool isRequired () const
 It returns true if the attribute is required, otherwise it returns false. More...
 
ArrayPropertyoperator= (const ArrayProperty &rhs)
 Assignment operator. More...
 
void setAutoNumber (bool a)
 It tells if the property is an autonumber or not. More...
 
void setDatasetName (const std::string &dsName)
 It sets the property name. More...
 
void setDefaultValue (std::string *d)
 It sets the default value associated to the property, or NULL if none is associated. More...
 
void setElementType (Property *t)
 It sets the type of array elements. More...
 
void setId (unsigned int id)
 It sets the property identifier. More...
 
void setName (const std::string &name)
 It sets the property name. More...
 
void setParent (Property *p)
 It associate this property to the informed parent. More...
 
void setRequired (bool r)
 It tells if the property is required or not. More...
 
 ~ArrayProperty ()
 Destructor. More...
 

Protected Attributes

std::string m_datasetName
 The property's dataset name. More...
 
std::string * m_defaultValue
 Default value. More...
 
Propertym_elementType
 The data type of array elements. More...
 
unsigned int m_id
 An identification number that can be used internally. More...
 
bool m_isAutoNumber
 A flag that indicates if this is an autonumber or serial type. More...
 
bool m_isRequired
 This flag indicates if the attribute is required or not. More...
 
std::string m_name
 The property name. More...
 
Propertym_parent
 The parent property type: it must be a CompositeProperty. More...
 
int m_type
 The property data type. More...
 

Detailed Description

The type for variable-length multidimensional arrays.

See also
Property, SimpleProperty, NumericProperty, StringProperty, DateTimeProperty, CompositeProperty

Definition at line 45 of file ArrayProperty.h.

Constructor & Destructor Documentation

te::dt::ArrayProperty::ArrayProperty ( const std::string &  name,
Property elementType,
bool  isRequired = false,
std::string *  defaultValue = 0,
unsigned int  id = 0,
Property parent = 0 
)

It constructs a new property for array data type.

Parameters
nameThe array property name.
elementTypeThe data type of array elements.
isRequiredTells if the the property is required (mandatory) or not.
defaultValueThe default value to be used if none is informed.
idThe property identifier.
parentA reference to the parent Property of the new object if it has one.
Postcondition
The array property will take the ownership of the defaultValue.
The array property will take the ownership of the elementType.
The elementType will have array property as its parent.
Warning
The identifier value (id) may be used by data source implementations. So, don't rely on its value!
te::dt::ArrayProperty::ArrayProperty ( const ArrayProperty rhs)

Copy constructor.

Parameters
rhsThe right-hand-side copy used to copy from.
Note
This method is used by clone().
te::dt::ArrayProperty::~ArrayProperty ( )

Destructor.

Member Function Documentation

Property* te::dt::ArrayProperty::clone ( ) const
virtual

It returns a clone of the object.

The new property will NOT have associations to other elements.

Returns
A clone of the object.

Reimplemented from te::dt::SimpleProperty.

const std::string& te::dt::Property::getDatasetName ( ) const
inlineinherited

It returns the name of the propery's dataset.

Returns
The the propery's dataset name.

Definition at line 144 of file Property.h.

std::string* te::dt::SimpleProperty::getDefaultValue ( ) const
inlineinherited

It returns the default value associated to the property, or NULL if none is associated.

Returns
The default value associated to the property, or NULL if none is associated.
Note
The caller of this method will not take the ownership of the given string.

Definition at line 127 of file SimpleProperty.h.

Property* te::dt::ArrayProperty::getElementType ( ) const
inline

It returns the type of array elements.

Returns
The type of array elements.

Definition at line 98 of file ArrayProperty.h.

unsigned int te::dt::Property::getId ( ) const
inlineinherited

It returns the property identifier.

Returns
A number used to identify the property.
Warning
The identifier value may be used by data source implementations. So, don't rely on its value!

Definition at line 109 of file Property.h.

const std::string& te::dt::Property::getName ( ) const
inlineinherited

It returns the property name.

Returns
The property name.
Note
For DataSetTypes the name can have namespace prefix or schema name prefix, it will depend on the data source implementation.

Definition at line 127 of file Property.h.

Property* te::dt::Property::getParent ( ) const
inlineinherited

It returns the parent of this property, or NULL, if it doesn't have one.

Returns
The parent of this property, or NULL, if it doesn't have one.

Definition at line 168 of file Property.h.

int te::dt::Property::getType ( ) const
inlineinherited

It returns the property data type.

Returns
The property data type.

Definition at line 161 of file Property.h.

Referenced by te::dt::CompositeProperty::findFirstPropertyOfType().

bool te::dt::SimpleProperty::has ( Property p) const
virtualinherited

It checks if the Property "p" is associated to this property or any other parent.

This method can be used to ask if a given Property belongs to a more complex type (like: CompositeProperty or DataSetType).

Parameters
pThe Property we are checking.
Returns
True if the given Property "p" is associated to to this Property, otherwise, returns false.

Implements te::dt::Property.

bool te::dt::SimpleProperty::isAutoNumber ( ) const
inlineinherited

It returns true if the attribute is an autonumber, otherwise it returns false.

Returns
True if the attribute is an autonumber, otherwise it returns false.

Definition at line 111 of file SimpleProperty.h.

bool te::dt::SimpleProperty::isRequired ( ) const
inlineinherited

It returns true if the attribute is required, otherwise it returns false.

Returns
True if the attribute is required, otherwise it returns false.

Definition at line 97 of file SimpleProperty.h.

ArrayProperty& te::dt::ArrayProperty::operator= ( const ArrayProperty rhs)

Assignment operator.

Parameters
rhsThe right-hand-side copy used to copy from.
Returns
A reference to this object.
void te::dt::SimpleProperty::setAutoNumber ( bool  a)
inlineinherited

It tells if the property is an autonumber or not.

Parameters
aIf true the property is marked as an autonumber (serial), otherwise it is not.

Definition at line 118 of file SimpleProperty.h.

Referenced by te::pgis::Convert2TerraLib().

void te::dt::Property::setDatasetName ( const std::string &  dsName)
inlineinherited

It sets the property name.

Parameters
nameThe new property name.
Warning
Take care when calling this method for a DataSetType associated to a DataSourceCatalog. Prefer using the rename method on the DataSourceCatalog API instead of using this method.

Definition at line 154 of file Property.h.

void te::dt::SimpleProperty::setDefaultValue ( std::string *  d)
inherited

It sets the default value associated to the property, or NULL if none is associated.

Parameters
dThe default value associated to the property, or NULL if none is associated.
Note
The SimpleProperty qill take the ownership of the given string.
void te::dt::ArrayProperty::setElementType ( Property t)

It sets the type of array elements.

Parameters
tThe type of array elements.
Postcondition
The ArrayProperty will take the ownership of the given element type.
The elementType will have ArrayProperty as its parent.

Referenced by te::pgis::Convert2TerraLib().

void te::dt::Property::setId ( unsigned int  id)
inlineinherited

It sets the property identifier.

Parameters
idA number used to identify the property.
Warning
The identifier value may be used by data source implementations. So, don't rely on its value!

Definition at line 118 of file Property.h.

void te::dt::Property::setName ( const std::string &  name)
inlineinherited

It sets the property name.

Parameters
nameThe new property name.
Warning
Take care when calling this method for a DataSetType associated to a DataSourceCatalog. Prefer using the rename method on the DataSourceCatalog API instead of using this method.

Definition at line 137 of file Property.h.

void te::dt::Property::setParent ( Property p)
inlineinherited

It associate this property to the informed parent.

Parameters
pTeh parent property.
Warning
Don't use this method without knowing the internal details of its use.

Definition at line 177 of file Property.h.

void te::dt::SimpleProperty::setRequired ( bool  r)
inlineinherited

It tells if the property is required or not.

Parameters
rIf true the property is marked as required, otherwise it is not required.

Definition at line 104 of file SimpleProperty.h.

Member Data Documentation

std::string te::dt::Property::m_datasetName
protectedinherited

The property's dataset name.

Definition at line 208 of file Property.h.

std::string* te::dt::SimpleProperty::m_defaultValue
protectedinherited

Default value.

Definition at line 164 of file SimpleProperty.h.

Property* te::dt::ArrayProperty::m_elementType
protected

The data type of array elements.

Definition at line 121 of file ArrayProperty.h.

unsigned int te::dt::Property::m_id
protectedinherited

An identification number that can be used internally.

Definition at line 205 of file Property.h.

bool te::dt::SimpleProperty::m_isAutoNumber
protectedinherited

A flag that indicates if this is an autonumber or serial type.

Definition at line 163 of file SimpleProperty.h.

bool te::dt::SimpleProperty::m_isRequired
protectedinherited

This flag indicates if the attribute is required or not.

Definition at line 162 of file SimpleProperty.h.

std::string te::dt::Property::m_name
protectedinherited

The property name.

Definition at line 207 of file Property.h.

Property* te::dt::Property::m_parent
protectedinherited

The parent property type: it must be a CompositeProperty.

Definition at line 204 of file Property.h.

int te::dt::Property::m_type
protectedinherited

The property data type.

Definition at line 206 of file Property.h.


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