edu.isi.pegasus.planner.partitioner

## Class SingleLook

- java.lang.Object
- - edu.isi.pegasus.planner.partitioner.DAXWriter
  - - edu.isi.pegasus.planner.partitioner.SingleLook

    public class SingleLook
    extends DAXWriter

This class ends up writing a partitioned dax, that corresponds to one partition as defined by the Partitioner. It looks up the dax once when it is initialized, stores it in memory and then refers the memory to look up the job details for the jobs making up a particular partition.

Version:
  $Revision$
Author:
  Karan Vahi

### Nested Class Summary

Nested Classes
`private class` `SingleLook.MyCallBackHandler` The internal callback handler for the DAXParser in Euryale.

### Field Summary

Fields
`private int` `mCurrentNum` The number of jobs about which the callback interface has knowledge.
`private boolean` `mDAXInMemory` The flag to identify that dax is in memory.
`private java.util.Map` `mJobMap` The map containing all the jobs in the dax indexed by the job id.
`private java.util.Set` `mNodeSet` The set of job id's in the partition.
`private int` `mNumOfJobs` The number of jobs that are in the partition.
`private org.griphyn.vdl.dax.ADAG` `mPartADAG` The ADAG object containing the partitioned dax.
`private java.util.Map` `mRelationsMap` A map containing the relations between the jobs making up the partition.

### Fields inherited from class edu.isi.pegasus.planner.partitioner.DAXWriter

`mDaxFile, mLogger, mPartitionName, mPDAXDirectory, mWriteHandle, PACKAGE_NAME, PARTITION_PREFIX`

### Constructor Summary

Constructors
Constructor and Description
`SingleLook(java.lang.String daxFile, java.lang.String directory)` The overloaded constructor.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `writePartitionDax(Partition partition, int index)` It writes out a dax consisting of the jobs as specified in the partition.

### Methods inherited from class edu.isi.pegasus.planner.partitioner.DAXWriter

`close, getPartitionName, getPDAXFilename, getPDAXFilename, initializeWriteHandle, initializeWriteHandle, loadInstance, loadInstance, setPartitionName, writeln, writePartitionDax`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### mNodeSet

    private java.util.Set mNodeSet

The set of job id's in the partition.

#### mRelationsMap

    private java.util.Map mRelationsMap

A map containing the relations between the jobs making up the partition.

#### mPartADAG

    private org.griphyn.vdl.dax.ADAG mPartADAG

The ADAG object containing the partitioned dax.

#### mNumOfJobs

    private int mNumOfJobs

The number of jobs that are in the partition.

#### mCurrentNum

    private int mCurrentNum

The number of jobs about which the callback interface has knowledge.

#### mDAXInMemory

    private boolean mDAXInMemory

The flag to identify that dax is in memory.

#### mJobMap

    private java.util.Map mJobMap

The map containing all the jobs in the dax indexed by the job id.

### Constructor Detail

#### SingleLook

    public SingleLook(java.lang.String daxFile,
                      java.lang.String directory)

The overloaded constructor.

Parameters:
  `daxFile` - the path to the dax file that is being partitioned.
  `directory` - the directory in which the partitioned daxes are to be generated.

### Method Detail

#### writePartitionDax

    public boolean writePartitionDax(Partition partition,
                                     int index)

It writes out a dax consisting of the jobs as specified in the partition.

Specified by:
  `writePartitionDax` in class `DAXWriter`
Parameters:
  `partition` - the partition object containing the relations and id's of the jobs making up the partition.
  `index` - the index of the partition.
Returns:
  boolean true if dax successfully generated and written. false in case of error.