com.sparsity.dex.io
Class EdgeTypeLoader

java.lang.Object
  extended by com.sparsity.dex.io.TypeLoader
      extended by com.sparsity.dex.io.EdgeTypeLoader

public class EdgeTypeLoader
extends TypeLoader

EdgeTypeLoader class.

Specific TypeLoader implementation for edge types.

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

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

Constructor Summary
EdgeTypeLoader()
          Creates a new instance.
EdgeTypeLoader(RowReader rr, Graph g, int t, AttributeList attrs, Int32List attrsPos, int hPos, int tPos, int hAttr, int tAttr)
          Creates a new instance.
 
Method Summary
 void register(TypeLoaderListener tel)
          Registers a new listener.
 void run()
          See TypeLoader::Run.
 void runNPhases(int partitions)
          See TypeLoader::RunNPhases.
 void runTwoPhases()
          See TypeLoader::RunTwoPhases.
 void setAttributePositions(Int32List attrsPos)
          Sets the list of attribute positions.
 void setAttributes(AttributeList attrs)
          Sets the list of Attributes.
 void setFrequency(int freq)
          Sets the frequency of listener notification.
 void setGraph(Graph g)
          Sets the graph where the data will be loaded.
 void setHeadAttribute(int attr)
          Sets the attribute that will be used to find the head of the edge.
 void setHeadPosition(int pos)
          Sets the position of the head attribute in the source data.
 void setLocale(java.lang.String localeStr)
          Sets the locale that will be used to read the data.
 void setLogError(java.lang.String path)
          Sets a log error file.
 void setLogOff()
          Truns off all the error reporting.
 void setRowReader(RowReader rr)
          Sets the input data source.
 void setTailAttribute(int attr)
          Sets the attribute that will be used to find the tail of the edge.
 void setTailPosition(int pos)
          Sets the position of the tail attribute in the source data.
 void setTimestampFormat(java.lang.String timestampFormat)
          Sets a specific timestamp format.
 void setType(int t)
          Sets the type to be loaded.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EdgeTypeLoader

public EdgeTypeLoader(RowReader rr,
                      Graph g,
                      int t,
                      AttributeList attrs,
                      Int32List attrsPos,
                      int hPos,
                      int tPos,
                      int hAttr,
                      int tAttr)
Creates a new instance.

Parameters:
rr - [in] Input RowReader.
g - [in] Graph.
t - [in] Type identifier.
attrs - [in] Attribute identifiers to be loaded.
attrsPos - [in] Attribute positions (column index >=0). to all listeners.
hPos - [in] The position (index column) for the head value.
tPos - [in] The position (index column) for the tail value.
hAttr - [in] The attribute identifier for the head.
tAttr - [in] The attribute identifier for the tail.

EdgeTypeLoader

public EdgeTypeLoader()
Creates a new instance.

Method Detail

setLogOff

public void setLogOff()
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.

Overrides:
setLogOff in class TypeLoader

setTailPosition

public void setTailPosition(int pos)
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

setLogError

public void setLogError(java.lang.String path)
                 throws java.io.IOException
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.

Overrides:
setLogError in class TypeLoader
Parameters:
path - null
Throws:
java.io.IOException - If bad things happen opening the file.

setAttributes

public void setAttributes(AttributeList attrs)
Sets the list of Attributes.

Overrides:
setAttributes in class TypeLoader
Parameters:
attrs - [in] Attribute identifiers to be loaded

runTwoPhases

public void runTwoPhases()
                  throws java.io.IOException,
                         java.lang.RuntimeException
See TypeLoader::RunTwoPhases.

Overrides:
runTwoPhases in class TypeLoader
Throws:
java.io.IOException - null
java.lang.RuntimeException - null

setHeadAttribute

public void setHeadAttribute(int attr)
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

setRowReader

public void setRowReader(RowReader rr)
Sets the input data source.

Overrides:
setRowReader in class TypeLoader
Parameters:
rr - [in] Input RowReader.

runNPhases

public void runNPhases(int partitions)
                throws java.io.IOException,
                       java.lang.RuntimeException
See TypeLoader::RunNPhases.

Overrides:
runNPhases in class TypeLoader
Parameters:
partitions - null
Throws:
java.io.IOException - null
java.lang.RuntimeException - null

register

public void register(TypeLoaderListener tel)
Registers a new listener.

Overrides:
register in class TypeLoader
Parameters:
tel - TypeLoaderListener to be registered.

setLocale

public void setLocale(java.lang.String localeStr)
Sets the locale that will be used to read the data.

It should match the locale used in the rowreader.

Overrides:
setLocale in class TypeLoader
Parameters:
localeStr - [in] The locale string for the read data. See CSVReader.

run

public void run()
         throws java.io.IOException,
                java.lang.RuntimeException
See TypeLoader::Run.

Overrides:
run in class TypeLoader
Throws:
java.io.IOException - null
java.lang.RuntimeException - null

setAttributePositions

public void setAttributePositions(Int32List attrsPos)
Sets the list of attribute positions.

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

Overrides:
setAttributePositions in class TypeLoader
Parameters:
attrsPos - null

setFrequency

public void setFrequency(int freq)
Sets the frequency of listener notification.

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

Overrides:
setFrequency in class TypeLoader
Parameters:
freq - null

setGraph

public void setGraph(Graph g)
Sets the graph where the data will be loaded.

Overrides:
setGraph in class TypeLoader
Parameters:
g - [in] Graph.

setTimestampFormat

public void setTimestampFormat(java.lang.String timestampFormat)
Sets a specific timestamp format.

Overrides:
setTimestampFormat in class TypeLoader
Parameters:
timestampFormat - null

setType

public void setType(int t)
Sets the type to be loaded.

Overrides:
setType in class TypeLoader
Parameters:
t - [in] Type identifier.

setTailAttribute

public void setTailAttribute(int attr)
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

setHeadPosition

public void setHeadPosition(int pos)
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