All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
te::graph::SequenceLoaderStrategy Class Reference

This class implements the main functions necessary to save and load the graph data and metadata information using as strategy a "order by" to create a sequence of objects. More...

#include <SequenceLoaderStrategy.h>

Inheritance diagram for te::graph::SequenceLoaderStrategy:
te::graph::AbstractGraphLoaderStrategy

Public Member Functions

 SequenceLoaderStrategy (te::graph::GraphMetadata *metadata)
 Default constructor. More...
 
virtual ~SequenceLoaderStrategy ()
 Default destructor. More...
 
Database Box Graph Loader Strategy Methods

Method used to manager a graph data

virtual void loadDataByVertexId (int vertexId, te::graph::AbstractGraph *g, te::graph::GraphCache *gc=0)
 Functio used to load a group of vertex elements given a base element. More...
 
virtual void loadDataByEdgeId (int edgeId, te::graph::AbstractGraph *g, te::graph::GraphCache *gc=0)
 Functio used to load a group of edges elements given a base element. More...
 

Protected Attributes

te::graph::GraphMetadatam_graphMetadata
 Graph metadata attribute. More...
 

Abstract Graph Loader Strategy Methods

Method used to manager a graph data

virtual void saveData (GraphData *data)
 Save the graph data structure in Data Source. More...
 
virtual void removeEdge (int id)
 Function used to remove a edge saved in a data source. More...
 
virtual void removeVertex (int id)
 Function used to remove a vertex saved in a data source. More...
 
te::graph::GraphMetadatagetMetadata ()
 It returns a pointer to a class that describes the graph metadata. More...
 
void saveGraphEdgeList (GraphData *data)
 Used to save the edge elements from a graph data. More...
 
void saveVertexAttributes (GraphData *data)
 Used to save the vertex elements attributes from a graph data. More...
 
void saveGraphVertexList (GraphData *data)
 Used to save the vertex elements from a graph data. More...
 
void saveEdgeAttributes (GraphData *data)
 Used to save the edges elements attributes from a graph data. More...
 
VertexloadVertex (int id)
 Function used to load one vertex given a ID. More...
 
VertexloadVertexAttrs (int id)
 Function used to load one vertex given a ID. More...
 
EdgeloadEdge (int id)
 Function used to load one edge given a ID. More...
 
EdgeloadEdgeAttrs (int id)
 Function used to load one edge given a ID. More...
 

Detailed Description

This class implements the main functions necessary to save and load the graph data and metadata information using as strategy a "order by" to create a sequence of objects.

See also
AbstractGraphLoaderStrategy

Definition at line 67 of file SequenceLoaderStrategy.h.

Constructor & Destructor Documentation

te::graph::SequenceLoaderStrategy::SequenceLoaderStrategy ( te::graph::GraphMetadata metadata)

Default constructor.

Definition at line 51 of file SequenceLoaderStrategy.cpp.

te::graph::SequenceLoaderStrategy::~SequenceLoaderStrategy ( )
virtual

Default destructor.

Definition at line 55 of file SequenceLoaderStrategy.cpp.

Member Function Documentation

te::graph::GraphMetadata * te::graph::AbstractGraphLoaderStrategy::getMetadata ( )
inherited

It returns a pointer to a class that describes the graph metadata.

Returns
A valid pointer if exists and null pointer in other case

Definition at line 62 of file AbstractGraphLoaderStrategy.cpp.

Referenced by te::graph::Graph::Graph(), and te::graph::GraphCache::GraphCache().

void te::graph::SequenceLoaderStrategy::loadDataByEdgeId ( int  edgeId,
te::graph::AbstractGraph g,
te::graph::GraphCache gc = 0 
)
virtual

Functio used to load a group of edges elements given a base element.

Parameters
edgeIdAttribute used to identify the base element
gPointer to a graph, parent of this element
gcThis is a optional attribute, if present the cache will be check if the already been loaded

Implements te::graph::AbstractGraphLoaderStrategy.

Definition at line 189 of file SequenceLoaderStrategy.cpp.

References te::graph::AbstractGraph::add(), te::graph::Edge::addAttribute(), te::graph::GraphCache::checkCacheByEdgeId(), te::da::Field::getExpression(), te::graph::Edge::setAttributeVecSize(), te::graph::Globals::sm_tableEdgeModelAttrId, TE_TR, and te::graph::Vertex_List.

void te::graph::SequenceLoaderStrategy::loadDataByVertexId ( int  vertexId,
te::graph::AbstractGraph g,
te::graph::GraphCache gc = 0 
)
virtual
te::graph::Edge * te::graph::AbstractGraphLoaderStrategy::loadEdge ( int  id)
protectedinherited

Function used to load one edge given a ID.

Parameters
idThe edge identifier
Note
This function is used in case the graph was saved using the edge list
Returns
A valid edge pointer if the element was found and a null pointer in other case

Definition at line 365 of file AbstractGraphLoaderStrategy.cpp.

References te::graph::Edge::addAttribute(), te::common::Convert2String(), te::graph::Edge::setAttributeVecSize(), te::graph::Globals::sm_tableEdgeModelAttrId, te::graph::Globals::sm_tableEdgeModelAttrVFrom, and te::graph::Globals::sm_tableEdgeModelAttrVTo.

te::graph::Edge * te::graph::AbstractGraphLoaderStrategy::loadEdgeAttrs ( int  id)
protectedinherited

Function used to load one edge given a ID.

Parameters
idThe edge identifier
Note
This function is used in case the graph was saved using the vertex list
Returns
A valid vertex pointer if the element was found and a null pointer in other case

Definition at line 413 of file AbstractGraphLoaderStrategy.cpp.

References TE_TR.

te::graph::Vertex * te::graph::AbstractGraphLoaderStrategy::loadVertex ( int  id)
protectedinherited

Function used to load one vertex given a ID.

Parameters
idThe vertex identifier
Note
This function is used in case the graph was saved using the vertex list
Returns
A valid vertex pointer if the element was found and a null pointer in other case

Definition at line 314 of file AbstractGraphLoaderStrategy.cpp.

References TE_TR.

te::graph::Vertex * te::graph::AbstractGraphLoaderStrategy::loadVertexAttrs ( int  id)
protectedinherited

Function used to load one vertex given a ID.

Parameters
idThe vertex identifier
Note
This function is used in case the graph was saved using the edge list
Returns
A valid vertex pointer if the element was found and a null pointer in other case

Definition at line 319 of file AbstractGraphLoaderStrategy.cpp.

References te::graph::Vertex::addAttribute(), te::common::Convert2String(), te::graph::Vertex::setAttributeVecSize(), and te::graph::Globals::sm_tableVertexModelAttrId.

void te::graph::AbstractGraphLoaderStrategy::removeEdge ( int  id)
virtualinherited

Function used to remove a edge saved in a data source.

Parameters
idThe edge identifier

Reimplemented in te::graph::BottomUpLoaderStrategy, and te::graph::TopDownLoaderStrategy.

Definition at line 82 of file AbstractGraphLoaderStrategy.cpp.

References TE_TR.

void te::graph::AbstractGraphLoaderStrategy::removeVertex ( int  id)
virtualinherited

Function used to remove a vertex saved in a data source.

Parameters
idThe vertex identifier

Reimplemented in te::graph::BottomUpLoaderStrategy, and te::graph::TopDownLoaderStrategy.

Definition at line 91 of file AbstractGraphLoaderStrategy.cpp.

References TE_TR.

void te::graph::AbstractGraphLoaderStrategy::saveData ( GraphData data)
virtualinherited

Save the graph data structure in Data Source.

Parameters
dataPointer to a valid graph data

Reimplemented in te::graph::BottomUpLoaderStrategy, and te::graph::TopDownLoaderStrategy.

Definition at line 67 of file AbstractGraphLoaderStrategy.cpp.

References te::graph::Edge_List, and TE_TR.

void te::graph::AbstractGraphLoaderStrategy::saveEdgeAttributes ( GraphData data)
protectedinherited

Used to save the edges elements attributes from a graph data.

Parameters
dataPointer to a valid graph data

Definition at line 309 of file AbstractGraphLoaderStrategy.cpp.

References TE_TR.

void te::graph::AbstractGraphLoaderStrategy::saveGraphEdgeList ( GraphData data)
protectedinherited

Used to save the edge elements from a graph data.

Parameters
dataPointer to a valid graph data

Definition at line 100 of file AbstractGraphLoaderStrategy.cpp.

References te::graph::GraphData::getEdgeMap(), te::graph::GraphData::isDirty(), te::mem::DataSetItem::setInt32(), and te::mem::DataSetItem::setValue().

void te::graph::AbstractGraphLoaderStrategy::saveGraphVertexList ( GraphData data)
protectedinherited

Used to save the vertex elements from a graph data.

Parameters
dataPointer to a valid graph data

Definition at line 304 of file AbstractGraphLoaderStrategy.cpp.

References TE_TR.

void te::graph::AbstractGraphLoaderStrategy::saveVertexAttributes ( GraphData data)
protectedinherited

Used to save the vertex elements attributes from a graph data.

Parameters
dataPointer to a valid graph data

Definition at line 207 of file AbstractGraphLoaderStrategy.cpp.

References te::graph::GraphData::getVertexMap(), te::graph::GraphData::isDirty(), te::mem::DataSetItem::setInt32(), and te::mem::DataSetItem::setValue().

Member Data Documentation

te::graph::GraphMetadata* te::graph::AbstractGraphLoaderStrategy::m_graphMetadata
protectedinherited

Graph metadata attribute.

Definition at line 203 of file AbstractGraphLoaderStrategy.h.


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