public class WriterCallback extends java.lang.Object implements Callback
DAX
file for each of the partitions,
and also writes out a PDAX
file that captures the relations
between the partitions.Modifier and Type | Field and Description |
---|---|
protected DAXWriter |
mDAXWriter
The handle to the dax writer that writes out the dax corresponding to the
partition identified.
|
protected LogManager |
mLogger
The handle to the logger object.
|
protected boolean |
mPartitioningStarted
A boolean indicating that the partitioning has started.
|
protected java.lang.String |
mPDAX
The path to the PDAX file written out.
|
protected PDAXWriter |
mPDAXWriter
The handle to the partition graph writer.
|
protected PegasusProperties |
mProps
Handle to the properties available.
|
Constructor and Description |
---|
WriterCallback()
The default constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
cbDone()
Callback for the partitioner to signal that it is done with the processing.
|
void |
cbParents(java.lang.String child,
java.util.List parents)
Callback for when a partitioner determines the relations between partitions
that it has previously constructed.
|
void |
cbPartition(Partition p)
Callback for when a partitioner determines that partition has been
constructed.
|
protected PDAXWriter |
getHandletoPDAXWriter(java.lang.String daxFile,
java.lang.String name,
java.lang.String directory)
It returns the handle to the writer for writing out the pdax file
that contains the relations amongst the partitions and the jobs making
up the partitions.
|
protected java.lang.String |
getPartitionName()
Returns the name of the partition, that needs to be set while creating
the Partition object corresponding to each partition.
|
java.lang.String |
getPDAX()
Returns the name of the pdax file written out.
|
void |
initialize(PegasusProperties properties,
java.lang.String daxFile,
java.lang.String daxName,
java.lang.String directory)
Initializes the Writer Callback.
|
protected java.lang.String |
partitionRelation2XML(java.lang.String childID,
java.util.List parentIDs)
Returns the xml description of a relation between 2 partitions.
|
protected java.lang.String |
partitionRelation2XML(java.lang.String childID,
java.util.Set parentIDs)
Returns the xml description of a relation between 2 partitions.
|
protected java.lang.String |
partitionRelation2XML(java.lang.String childID,
java.lang.String parentID)
Returns the xml description of a relation between 2 partitions.
|
protected PDAXWriter mPDAXWriter
protected DAXWriter mDAXWriter
protected java.lang.String mPDAX
protected PegasusProperties mProps
protected LogManager mLogger
protected boolean mPartitioningStarted
public void initialize(PegasusProperties properties, java.lang.String daxFile, java.lang.String daxName, java.lang.String directory)
properties
- the properties passed to the planner.daxFile
- the path to the DAX file that is being partitioned.daxName
- the namelabel of the DAX as set in the root element of the DAX.directory
- the directory where the partitioned daxes have to reside.public void cbPartition(Partition p)
cbPartition
in interface Callback
p
- the constructed partition.java.lang.RuntimeException
- in case of any error while writing out the DAX or
the PDAX files.public void cbParents(java.lang.String child, java.util.List parents)
public void cbDone()
public java.lang.String getPDAX()
protected java.lang.String getPartitionName()
protected PDAXWriter getHandletoPDAXWriter(java.lang.String daxFile, java.lang.String name, java.lang.String directory)
daxFile
- the path to the DAX file that is being partitioned.name
- the name/label that is to be assigned to the pdax file.directory
- the directory where the partitioned daxes have to reside.protected java.lang.String partitionRelation2XML(java.lang.String childID, java.lang.String parentID)
childID
- the ID of the child.parentID
- the ID of the parent.protected java.lang.String partitionRelation2XML(java.lang.String childID, java.util.List parentIDs)
childID
- the ID of the childparentIDs
- List
of parent IDs.protected java.lang.String partitionRelation2XML(java.lang.String childID, java.util.Set parentIDs)
childID
- the ID of the childparentIDs
- Set
of parent IDs.