org.griphyn.cPlanner.engine
Class MainEngine

java.lang.Object
  extended by org.griphyn.cPlanner.engine.Engine
      extended by org.griphyn.cPlanner.engine.MainEngine

public class MainEngine
extends Engine

The central class that calls out to the various other components of Pegasus.

Version:
$Revision: 450 $
Author:
Karan Vahi, Gaurang Mehta
See Also:
org.griphyn.cPlanner.classes.ReplicaLocations

Field Summary
private  AuthenticateEngine mAuthEng
          The handle to the Authentication Engine that performs the authentication with the various sites.
private  PegasusBag mBag
          The bag of objects that is populated as planner is run.
private  ADag mCleanupDag
          The cleanup dag for the final concrete dag.
private  CreateDirectory mCreateEng
          The engine that ends up creating random directories in the remote execution pools.
private  Set mExecPools
          The pools on which the Dag should be executed as specified by the user.
private  InterPoolEngine mIPEng
          The handle to the InterPool Engine that calls out to the Site Selector and maps the jobs.
private  NodeCollapser mNodeCollapser
          The handle to the node collapser.
private  ADag mOriginalDag
          The Original Dag object which is constructed by parsing the dag file.
private  String mOutputPool
          The pool on which all the output data should be transferred.
private  ReplicaCatalogBridge mRCBridge
          The bridge to the Replica Catalog.
private  ReductionEngine mRedEng
          The handle to the Reduction Engine that performs reduction on the graph.
private  ADag mReducedDag
          The reduced Dag object which is got from the Reduction Engine.
private  RemoveDirectory mRemoveEng
          The engine that ends up creating the cleanup dag for the dag.
private  TransferEngine mTransEng
          The handle to the Transfer Engine that adds the transfer nodes in the graph to transfer the files from one site to another.
 
Fields inherited from class org.griphyn.cPlanner.engine.Engine
mLogger, mLogMsg, mPoolClass, mPoolFile, mPoolHandle, mPOptions, mProps, mRLIUrl, mTCFile, mTCHandle, mTCMode, REGISTRATION_UNIVERSE, TRANSFER_UNIVERSE
 
Constructor Summary
MainEngine(ADag orgDag, PegasusProperties props, PlannerOptions options)
          This constructor initialises the class variables to the variables passed.
 
Method Summary
 ADag getCleanupDAG()
          Returns the cleanup dag for the concrete dag.
 PegasusBag getPegasusBag()
          Returns the bag of intialization objects.
 ADag runPlanner()
          The main function which calls the other engines and does the necessary work.
 String setToString(Set s, String delim)
          A small helper method that displays the contents of a Set in a String.
private  void unmarkArgs()
          Deprecated.  
 
Methods inherited from class org.griphyn.cPlanner.engine.Engine
addVector, appendArrayList, loadProperties, printVector, stringInList, stringInPegVector, stringInVector, vectorToString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mOriginalDag

private ADag mOriginalDag
The Original Dag object which is constructed by parsing the dag file.


mReducedDag

private ADag mReducedDag
The reduced Dag object which is got from the Reduction Engine.


mCleanupDag

private ADag mCleanupDag
The cleanup dag for the final concrete dag.


mExecPools

private Set mExecPools
The pools on which the Dag should be executed as specified by the user.


mOutputPool

private String mOutputPool
The pool on which all the output data should be transferred.


mRCBridge

private ReplicaCatalogBridge mRCBridge
The bridge to the Replica Catalog.


mIPEng

private InterPoolEngine mIPEng
The handle to the InterPool Engine that calls out to the Site Selector and maps the jobs.


mRedEng

private ReductionEngine mRedEng
The handle to the Reduction Engine that performs reduction on the graph.


mTransEng

private TransferEngine mTransEng
The handle to the Transfer Engine that adds the transfer nodes in the graph to transfer the files from one site to another.


mCreateEng

private CreateDirectory mCreateEng
The engine that ends up creating random directories in the remote execution pools.


mRemoveEng

private RemoveDirectory mRemoveEng
The engine that ends up creating the cleanup dag for the dag.


mAuthEng

private AuthenticateEngine mAuthEng
The handle to the Authentication Engine that performs the authentication with the various sites.


mNodeCollapser

private NodeCollapser mNodeCollapser
The handle to the node collapser.


mBag

private PegasusBag mBag
The bag of objects that is populated as planner is run.

Constructor Detail

MainEngine

public MainEngine(ADag orgDag,
                  PegasusProperties props,
                  PlannerOptions options)
This constructor initialises the class variables to the variables passed. The pool names specified should be present in the pool.config file

Parameters:
orgDag - the dag to be worked on.
props - the properties to be used.
options - The options specified by the user to run the planner.
Method Detail

runPlanner

public ADag runPlanner()
The main function which calls the other engines and does the necessary work.

Returns:
the planned worflow.

getCleanupDAG

public ADag getCleanupDAG()
Returns the cleanup dag for the concrete dag.

Returns:
the cleanup dag if the random dir is given. null otherwise.

getPegasusBag

public PegasusBag getPegasusBag()
Returns the bag of intialization objects.

Returns:
PegasusBag

unmarkArgs

private void unmarkArgs()
Deprecated. 

Unmarks the arguments , that are tagged in the DaxParser. At present there are no tagging.


setToString

public String setToString(Set s,
                          String delim)
A small helper method that displays the contents of a Set in a String.

Parameters:
s - the Set whose contents need to be displayed
delim - The delimited between the members of the set.
Returns:
String


Copyright © 2007 The University of Southern California. All Rights Reserved.