|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.isi.pegasus.planner.dax.ADAG
public class ADAG
This class provides the Java API to create DAX files. The DAX XML SCHEMA is available at http://pegasus.isi.edu/schema/dax-3.3.xsd and documentation available at http://pegasus.isi.edu/wms/docs/schemas/dax-3.3/dax-3.3.html The DAX consists of 6 parts the first 4 are optional and the last is optional.

To generate an example DIAMOND DAX run the ADAG Class as shown below java ADAG filename NOTE: This is an illustrative example only. Please see examples directory for a working example Shown below are some of the steps in creating a DIAMOND DAX.
ADAG object File objectMetaData entry to the file objectsProfile entry to the file objectsPFN to the File objectExecutable objectExecutable.ARCH and Executable.OS for the executable. Default is x86 and LINUXPFN of the executable. In case of stageable executables the path should be a urlProfile and MetaData objects to the executableExecutable object to the ADAG objectTransformation object : compound Executable (Executable depending on other executable and files)ADAG objectJob objectProfiles to the jobADAGDAG objectDAX job object.
| Field Summary | |
|---|---|
private int |
mCount
The Count of the number of dax objects : N |
private Map<String,List<Parent>> |
mDependencies
Map of Dependencies between Job,DAX,DAG objects. |
private Set<Executable> |
mExecutables
The list of Executable objects |
private List<File> |
mFiles
The list of edu.isi.pegasus.planner.dax.File objects |
private int |
mIndex
The Index of the dax object. |
private List<Invoke> |
mInvokes
List of Notification objects |
private Map<String,AbstractJob> |
mJobs
The List of Job,DAX and DAG objects |
private LogManager |
mLogger
|
private String |
mName
The Name / Label of the DAX |
private Set<Transformation> |
mTransformations
The List of Transformation objects |
private XMLWriter |
mWriter
Handle the XML writer |
static String |
SCHEMA_LOCATION
The "not-so-official" location URL of the DAX schema definition. |
static String |
SCHEMA_NAMESPACE
The "official" namespace URI of the site catalog schema. |
static String |
SCHEMA_NAMESPACE_XSI
XSI SCHEMA NAMESPACE |
static String |
SCHEMA_VERSION
The version to report. |
| Constructor Summary | |
|---|---|
ADAG(String name)
The Simple constructor for the DAX object |
|
ADAG(String name,
int index,
int count)
DAX Constructor |
|
| Method Summary | |
|---|---|
private ADAG |
addAbstractJob(AbstractJob ajob)
Add AbstractJob to the DAX |
private ADAG |
addAbstractJobs(List<AbstractJob> ajobs)
Add AbstractJobs to the DAX |
ADAG |
addDAG(DAG dag)
Add a DAG job to the DAX |
ADAG |
addDAGs(List<DAG> dags)
Add multiple DAG jobs to the DAX |
ADAG |
addDAX(DAX dax)
Add a DAX job to the DAX |
ADAG |
addDAXs(List<DAX> daxs)
Add multiple DAX jobs to the DAX |
ADAG |
addDependency(AbstractJob parent,
AbstractJob child)
Add a parent child dependency between two jobs,dax,dag |
ADAG |
addDependency(AbstractJob parent,
AbstractJob child,
String label)
Add a parent child dependency with a dependency label |
ADAG |
addDependency(String parent,
String child)
Add a parent child dependency between two jobs,dax,dag |
ADAG |
addDependency(String parent,
String child,
String label)
Add a parent child dependency with a dependency label |
ADAG |
addExecutable(Executable executable)
Add Executable to the DAX |
ADAG |
addExecutables(List<Executable> executables)
Add Multiple Executable objects to the DAX |
ADAG |
addFile(File file)
Add a RC File object to the top of the DAX. |
ADAG |
addFiles(List<File> files)
Add Files to the RC Section on top of the DAX |
ADAG |
addInvoke(Invoke.WHEN when,
String what)
Add a Notification for this Workflow |
ADAG |
addInvoke(Invoke invoke)
Add a Notification for this Workflow |
ADAG |
addInvokes(List<Invoke> invokes)
Add a List of Notifications for this Workflow |
ADAG |
addJob(Job job)
Add Job to the DAX |
ADAG |
addJobs(List<Job> jobs)
Add multiple Jobs to the DAX |
ADAG |
addNotification(Invoke.WHEN when,
String what)
Add a Notification for this Workflow |
ADAG |
addNotification(Invoke invoke)
Add a Notification for this Workflow |
ADAG |
addNotifications(List<Invoke> invokes)
Add a List of Notifications for this Workflow |
ADAG |
addTransformation(Transformation transformation)
Add Transformation to the DAX |
ADAG |
addTransformations(List<Transformation> transformations)
Add Multiple Transformation to the DAX |
private boolean |
containsAbstractJob(AbstractJob ajob)
Check if an abstractjob exists in the DAX |
private boolean |
containsAbstractJobId(String ajobid)
Check if a jobid exists in the DAX |
boolean |
containsDAG(DAG dag)
Check if a DAG job exists in the DAX |
boolean |
containsDAGId(String dagid)
Check if a DAG job id exists in the DAX |
boolean |
containsDAX(DAX dax)
Check if a DAX job exists in the DAX |
boolean |
containsDAXId(String daxid)
Check if a DAX job id exists in the DAX |
boolean |
containsExecutable(Executable executable)
Checks if a given executable exists in the DAX based Transformation Catalog |
boolean |
containsJob(Job job)
Check if a job exists in the DAX |
boolean |
containsJobId(String jobid)
Check if a jobid exists in the DAX |
boolean |
containsTransformation(Transformation transformation)
Checks if a given Transformation exists in the DAX based Transformation Catalog |
private static ADAG |
Diamond()
|
private AbstractJob |
getAbstractJob(String ajobid)
Returns an abstract Job with id ajobid if present otherwise null. |
DAG |
getDAG(String dagid)
Returns a DAG object with id dagid if present otherwise null. |
DAX |
getDAX(String daxid)
Returns a DAX object with id daxid if present otherwise null. |
Job |
getJob(String jobid)
Returns a Job object with id jobid if present otherwise null. |
static void |
main(String[] args)
Create an example DIAMOND DAX |
void |
toXML(XMLWriter writer)
Generates a DAX representation. |
void |
writeToFile(String daxfile)
Generate a DAX File out of this object; |
void |
writeToSTDOUT()
Generate a DAX representation on STDOUT. |
void |
writeToWriter(Writer writer,
boolean close)
Generate a DAX representation and pipe it into the Writer |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final String SCHEMA_NAMESPACE
public static final String SCHEMA_NAMESPACE_XSI
public static final String SCHEMA_LOCATION
public static final String SCHEMA_VERSION
private String mName
private int mIndex
private int mCount
private Map<String,AbstractJob> mJobs
DAG,
DAX,
Job,
AbstractJobprivate Set<Transformation> mTransformations
Transformationprivate Set<Executable> mExecutables
Executableprivate List<File> mFiles
Fileprivate Map<String,List<Parent>> mDependencies
Parentprivate List<Invoke> mInvokes
private XMLWriter mWriter
private LogManager mLogger
| Constructor Detail |
|---|
public ADAG(String name)
name - DAX LABEL
public ADAG(String name,
int index,
int count)
name - DAX Labelindex - Index of DAX out of N DAX'scount - Number of DAXS in a group| Method Detail |
|---|
public ADAG addInvoke(Invoke.WHEN when,
String what)
when - what -
public ADAG addNotification(Invoke.WHEN when,
String what)
when - what -
public ADAG addInvoke(Invoke invoke)
invoke -
public ADAG addNotification(Invoke invoke)
invoke -
public ADAG addInvokes(List<Invoke> invokes)
invokes -
public ADAG addNotifications(List<Invoke> invokes)
invokes -
public ADAG addFile(File file)
file - File object to be added to the RC section
Filepublic ADAG addFiles(List<File> files)
files - ListFilepublic ADAG addExecutable(Executable executable)
executable - Executable to be added
Executablepublic ADAG addExecutables(List<Executable> executables)
executables - List of Executable objects to be added
Executablepublic boolean containsExecutable(Executable executable)
executable -
public ADAG addTransformation(Transformation transformation)
transformation - Transformation object to be added
Transformationpublic ADAG addTransformations(List<Transformation> transformations)
transformations - List of Transformation objects
Transformationpublic boolean containsTransformation(Transformation transformation)
transformation - Transformation
private ADAG addAbstractJob(AbstractJob ajob)
ajob - AbstractJob
Job,
DAG,
DAX,
AbstractJobprivate ADAG addAbstractJobs(List<AbstractJob> ajobs)
ajobs - AbstractJob
Job,
DAG,
DAX,
AbstractJobprivate AbstractJob getAbstractJob(String ajobid)
ajobid -
private boolean containsAbstractJob(AbstractJob ajob)
ajob -
private boolean containsAbstractJobId(String ajobid)
ajobid -
public ADAG addJob(Job job)
job -
Job,
AbstractJobpublic ADAG addJobs(List<Job> jobs)
jobs -
Job,
AbstractJobpublic boolean containsJob(Job job)
job -
public boolean containsJobId(String jobid)
jobid -
public Job getJob(String jobid)
jobid -
public DAX getDAX(String daxid)
daxid -
public DAG getDAG(String dagid)
dagid -
public ADAG addDAG(DAG dag)
dag - the DAG to be added
DAG,
AbstractJobpublic ADAG addDAGs(List<DAG> dags)
dags - List of DAG jobs to be added
DAG,
AbstractJobpublic boolean containsDAG(DAG dag)
dag -
public boolean containsDAGId(String dagid)
dagid -
public ADAG addDAX(DAX dax)
dax - DAX to be added
DAX,
AbstractJobpublic ADAG addDAXs(List<DAX> daxs)
daxs - LIST of DAX jobs to be added
DAX,
AbstractJobpublic boolean containsDAX(DAX dax)
dax -
public boolean containsDAXId(String daxid)
daxid -
public ADAG addDependency(String parent,
String child)
parent - String job,dax,dag idchild - String job,dax,dag,id
public ADAG addDependency(AbstractJob parent,
AbstractJob child)
parent - Job|DAX|DAG objectchild - Job|DAX|DAG object
public ADAG addDependency(String parent,
String child,
String label)
parent - String job,dax,dag idchild - String job,dax,dag idlabel - String dependency label
public ADAG addDependency(AbstractJob parent,
AbstractJob child,
String label)
parent - Job|DAX|DAG objectchild - Job|DAX|DAG objectlabel - String label for annotation
public void writeToFile(String daxfile)
daxfile - The file to write the DAX topublic void writeToSTDOUT()
public void writeToWriter(Writer writer,
boolean close)
writer - A Writer objectclose - Whether writer should be closed on return.public void toXML(XMLWriter writer)
writer - public static void main(String[] args)
args - private static ADAG Diamond()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||