Sparksee 6.1.0
NodeTypeLoader Class Reference

NodeTypeLoader class. More...

#include <NodeTypeLoader.h>

Inheritance diagram for NodeTypeLoader:
Inheritance graph
Collaboration diagram for NodeTypeLoader:
Collaboration graph

Public Member Functions

 NodeTypeLoader ()
 Creates a new instance.
 NodeTypeLoader (RowReader &rowReader, sparksee::gdb::Graph &graph, sparksee::gdb::type_t type, sparksee::gdb::AttributeList &attrs, sparksee::gdb::Int32List &attrsPos)
 Creates a new instance.
virtual ~NodeTypeLoader ()
 Destructor.
void Run () throw (sparksee::gdb::IOException, sparksee::gdb::Error)
 See the TypeLoader class Run method.
void RunTwoPhases () throw (sparksee::gdb::IOException, sparksee::gdb::Error)
 See the TypeLoader class RunTwoPhases method.
void RunNPhases (sparksee::gdb::int32_t partitions) throw (sparksee::gdb::IOException, sparksee::gdb::Error)
 See the TypeLoader class RunNPhases method.
void SetLogError (const std::wstring &path) throw (sparksee::gdb::IOException)
 Sets a log error file.
void SetLogOff ()
 Truns off all the error reporting.
void Register (TypeLoaderListener &tel)
 Registers a new listener.
void SetRowReader (RowReader &rr)
 Sets the input data source.
void SetGraph (sparksee::gdb::Graph &graph)
 Sets the graph where the data will be loaded.
void SetLocale (const std::wstring &localeStr)
 Sets the locale that will be used to read the data.
void SetType (sparksee::gdb::type_t type)
 Sets the type to be loaded.
void SetAttributes (sparksee::gdb::AttributeList &attrs)
 Sets the list of Attributes.
void SetAttributePositions (sparksee::gdb::Int32List &attrsPos)
 Sets the list of attribute positions.
void SetTimestampFormat (const std::wstring &timestampFormat)
 Sets a specific timestamp format.
void SetFrequency (sparksee::gdb::int32_t freq)
 Sets the frequency of listener notification.

Protected Types

enum  Mode {
  ONE_PHASE ,
  TWO_PHASES ,
  N_PHASES
}
 Load can work in different ways. More...

Protected Member Functions

void Run (Mode ph, sparksee::gdb::int32_t par) throw (sparksee::gdb::IOException, sparksee::gdb::Error)
 Runs load process.
sparksee::gdb::bool_t CanRun ()
 Checks that all the required settings are ready to run.
void NotifyListeners (const TypeLoaderEvent &ev)
 Notifies progress to all registered listeners.
void SetHeadAttribute (sparksee::gdb::attr_t attr)
 Sets the attribute that will be used to find the head of the edge.
void SetHeadPosition (sparksee::gdb::int32_t pos)
 Sets the position of the head attribute in the source data.
void SetTailAttribute (sparksee::gdb::attr_t attr)
 Sets the attribute that will be used to find the tail of the edge.
void SetTailPosition (sparksee::gdb::int32_t pos)
 Sets the position of the tail attribute in the source data.
void SetTailMEP (sparksee::gdb::MissingEndpoint mep)
 Sets the flag to create missing tail nodes when loading nodes or edges.
void SetHeadMEP (sparksee::gdb::MissingEndpoint mep)
 Sets the flag to create missing head nodes when loading nodes or edges.

Detailed Description

NodeTypeLoader class.

Specific TypeLoader implementation for node types.

Check out the 'Data import' section in the SPARKSEE User Manual for more details on this.

Author
Sparsity Technologies http://www.sparsity-technologies.com

Member Enumeration Documentation

◆ Mode

enum TypeLoader::Mode
protectedinherited

Load can work in different ways.

Enumerator
ONE_PHASE 

Performs the load in a phases.

Load all objects an attributes at the same time.

TWO_PHASES 

Performs the load in two phases.

Firstly load all objects (and create them if necessary) and secondly loads all the attributes.

Working on this mode it is necessary to build a temporary file.

N_PHASES 

Performs the load in N phases.

Firstly load all objects (and create them if necessary) and secondly loads all the attributes. But in this case, attributes are loaded one by one. This way, if there are three attributes, then 4 traverses to the RowReader are necessary.

Working on this mode it is necessary to build a temporary file.

Constructor & Destructor Documentation

◆ NodeTypeLoader()

NodeTypeLoader::NodeTypeLoader ( RowReader & rowReader,
sparksee::gdb::Graph & graph,
sparksee::gdb::type_t type,
sparksee::gdb::AttributeList & attrs,
sparksee::gdb::Int32List & attrsPos )
inline

Creates a new instance.

Parameters
rowReader[in] Input RowReader.
graph[in] Graph.
type[in] Type identifier.
attrs[in] Attribute identifiers to be loaded.
attrsPos[in] Attribute positions (column index >=0).

References TypeLoader::TypeLoader().

Member Function Documentation

◆ CanRun()

sparksee::gdb::bool_t TypeLoader::CanRun ( )
protectedinherited

Checks that all the required settings are ready to run.

Returns
Returns true if all the settings are ready.

◆ NotifyListeners()

void TypeLoader::NotifyListeners ( const TypeLoaderEvent & ev)
protectedinherited

Notifies progress to all registered listeners.

Parameters
ev[in] Progress event to be notified.

◆ Register()

void TypeLoader::Register ( TypeLoaderListener & tel)
inherited

Registers a new listener.

Parameters
[in]telTypeLoaderListener to be registered.

◆ Run() [1/2]

void NodeTypeLoader::Run ( )
throw (sparksee::gdb::IOException,
sparksee::gdb::Error )
inlinevirtual

See the TypeLoader class Run method.

Exceptions
IOExceptionIf bad things happen using to the RowReader.
ErrorFor other issues

Implements TypeLoader.

References TypeLoader::ONE_PHASE.

◆ Run() [2/2]

void TypeLoader::Run ( Mode ph,
sparksee::gdb::int32_t par )
throw (sparksee::gdb::IOException,
sparksee::gdb::Error )
protectedinherited

Runs load process.

Parameters
ph[in] The load mode.
par[in] Number of horizontal partitions to perform the load.
Exceptions
IOExceptionIf bad things happen using to the RowReader.
ErrorFor other issues

◆ RunNPhases()

void NodeTypeLoader::RunNPhases ( sparksee::gdb::int32_t partitions)
throw (sparksee::gdb::IOException,
sparksee::gdb::Error )
inlinevirtual

See the TypeLoader class RunNPhases method.

Exceptions
IOExceptionIf bad things happen using to the RowReader.
ErrorFor other issues

Implements TypeLoader.

References TypeLoader::N_PHASES.

◆ RunTwoPhases()

void NodeTypeLoader::RunTwoPhases ( )
throw (sparksee::gdb::IOException,
sparksee::gdb::Error )
inlinevirtual

See the TypeLoader class RunTwoPhases method.

Exceptions
IOExceptionIf bad things happen using to the RowReader.
ErrorFor other issues

Implements TypeLoader.

References TypeLoader::TWO_PHASES.

◆ SetAttributePositions()

void TypeLoader::SetAttributePositions ( sparksee::gdb::Int32List & attrsPos)
inherited

Sets the list of attribute positions.

Parameters
attrsPos[in] Attribute positions (column index >=0).

References SetAttributePositions().

Referenced by SetAttributePositions().

◆ SetAttributes()

void TypeLoader::SetAttributes ( sparksee::gdb::AttributeList & attrs)
inherited

Sets the list of Attributes.

Parameters
attrs[in] Attribute identifiers to be loaded

References SetAttributes().

Referenced by SetAttributes().

◆ SetFrequency()

void TypeLoader::SetFrequency ( sparksee::gdb::int32_t freq)
inherited

Sets the frequency of listener notification.

Parameters
freq[in] Frequency in number of rows managed to notify progress to all listeners

References SetFrequency().

Referenced by SetFrequency().

◆ SetGraph()

void TypeLoader::SetGraph ( sparksee::gdb::Graph & graph)
inherited

Sets the graph where the data will be loaded.

Parameters
graph[in] Graph.

References SetGraph().

Referenced by SetGraph().

◆ SetHeadAttribute()

void TypeLoader::SetHeadAttribute ( sparksee::gdb::attr_t attr)
protectedinherited

Sets the attribute that will be used to find the head of the edge.

This method is protected because only the Edge loaders should have it.

Parameters
attr[in] Head Attribute

Referenced by EdgeTypeLoader::EdgeTypeLoader(), and EdgeTypeLoader::SetHeadAttribute().

◆ SetHeadMEP()

void TypeLoader::SetHeadMEP ( sparksee::gdb::MissingEndpoint mep)
protectedinherited

Sets the flag to create missing head nodes when loading nodes or edges.

Parameters
flagTrue if the nodes need to be created. False otherwise

Referenced by EdgeTypeLoader::EdgeTypeLoader(), and EdgeTypeLoader::SetHeadMEP().

◆ SetHeadPosition()

void TypeLoader::SetHeadPosition ( sparksee::gdb::int32_t pos)
protectedinherited

Sets the position of the head attribute in the source data.

This method is protected because only the Edge loaders should have it.

Parameters
pos[in] Head position

Referenced by EdgeTypeLoader::EdgeTypeLoader(), and EdgeTypeLoader::SetHeadPosition().

◆ SetLocale()

void TypeLoader::SetLocale ( const std::wstring & localeStr)
inherited

Sets the locale that will be used to read the data.

It should match the locale used in the rowreader.

Parameters
localeStr[in] The locale string for the read data. See CSVReader.

References SetLocale().

Referenced by SetLocale().

◆ SetLogError()

void TypeLoader::SetLogError ( const std::wstring & path)
throw (sparksee::gdb::IOException )
inherited

Sets a log error file.

By default errors are thrown as a exception and the load process ends. If a log file is set, errors are logged there and the load process does not stop.

Parameters
path[in] The path to the error log file.
Exceptions
IOExceptionIf bad things happen opening the file.

◆ SetLogOff()

void TypeLoader::SetLogOff ( )
inherited

Truns off all the error reporting.

The log file will not be created and no exceptions for invalid data will be thrown. If you just want to turn off the logs, but abort at the first error what you should do is not call this method and not set a logError file.

◆ SetRowReader()

void TypeLoader::SetRowReader ( RowReader & rr)
inherited

Sets the input data source.

Parameters
rr[in] Input RowReader.

References SetRowReader().

Referenced by SetRowReader().

◆ SetTailAttribute()

void TypeLoader::SetTailAttribute ( sparksee::gdb::attr_t attr)
protectedinherited

Sets the attribute that will be used to find the tail of the edge.

This method is protected because only the Edge loaders should have it.

Parameters
attr[in] Tail Attribute

Referenced by EdgeTypeLoader::EdgeTypeLoader(), and EdgeTypeLoader::SetTailAttribute().

◆ SetTailMEP()

void TypeLoader::SetTailMEP ( sparksee::gdb::MissingEndpoint mep)
protectedinherited

Sets the flag to create missing tail nodes when loading nodes or edges.

Parameters
flagTrue if the nodes need to be created. False otherwise

Referenced by EdgeTypeLoader::EdgeTypeLoader(), and EdgeTypeLoader::SetTailMEP().

◆ SetTailPosition()

void TypeLoader::SetTailPosition ( sparksee::gdb::int32_t pos)
protectedinherited

Sets the position of the tail attribute in the source data.

This method is protected because only the Edge loaders should have it.

Parameters
pos[in] Tail position

Referenced by EdgeTypeLoader::EdgeTypeLoader(), and EdgeTypeLoader::SetTailPosition().

◆ SetTimestampFormat()

void TypeLoader::SetTimestampFormat ( const std::wstring & timestampFormat)
inherited

Sets a specific timestamp format.

Parameters
timestampFormat[in] A string with the timestamp format definition.

References SetTimestampFormat().

Referenced by SetTimestampFormat().

◆ SetType()

void TypeLoader::SetType ( sparksee::gdb::type_t type)
inherited

Sets the type to be loaded.

Parameters
type[in] Type identifier.

References SetType().

Referenced by SetType().


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