Class MonitordNotify
- java.lang.Object
-
- edu.isi.pegasus.planner.code.generator.MonitordNotify
-
- All Implemented Interfaces:
CodeGenerator
public class MonitordNotify extends java.lang.Object implements CodeGenerator
A MonitordNotify Input File Generator that generates the input file required for pegasus-monitord.- Version:
- $Revision$
- Author:
- Rajiv Mayani
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DAG_JOB
The constant string to write for dag job notifications.static java.lang.String
DAX_JOB
The constant string to write for dax job notifications.static java.lang.String
DELIMITER
The delimiter with which to separate different fields in the notifications file.static java.lang.String
INVOCATION
The constant string to write for invocation notifications.static java.lang.String
JOB
The constant string to write for job notifications.protected PegasusBag
mBag
The bag of initialization objects.protected LogManager
mLogger
The handle to the logging object.private java.io.PrintWriter
mNotificationsWriter
The handle to the PrintWriter that writes out the notifications fileprotected PlannerOptions
mPOptions
The object containing the command line options specified to the planner at runtime.protected PegasusProperties
mProps
The object holding all the properties pertaining to Pegasus.protected java.lang.String
mSubmitFileDir
The directory where all the submit files are to be generated.static java.lang.String
NOTIFICATIONS_FILE_SUFFIX
The suffix to use while constructing the name of the metrics filestatic java.lang.String
WORKFLOW
The constant string to write for work flow notifications.-
Fields inherited from interface edu.isi.pegasus.planner.code.CodeGenerator
VERSION
-
-
Constructor Summary
Constructors Constructor Description MonitordNotify()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Collection<java.io.File>
generateCode(ADag dag)
Generates the notifications input file.void
generateCode(ADag dag, Job job)
Not implementedvoid
initialize(PegasusBag bag)
Initializes the Code Generator implementation.void
reset()
Not implementedboolean
startMonitoring()
Not implemented
-
-
-
Field Detail
-
NOTIFICATIONS_FILE_SUFFIX
public static final java.lang.String NOTIFICATIONS_FILE_SUFFIX
The suffix to use while constructing the name of the metrics file- See Also:
- Constant Field Values
-
WORKFLOW
public static final java.lang.String WORKFLOW
The constant string to write for work flow notifications.- See Also:
- Constant Field Values
-
JOB
public static final java.lang.String JOB
The constant string to write for job notifications.- See Also:
- Constant Field Values
-
INVOCATION
public static final java.lang.String INVOCATION
The constant string to write for invocation notifications.- See Also:
- Constant Field Values
-
DAG_JOB
public static final java.lang.String DAG_JOB
The constant string to write for dag job notifications.- See Also:
- Constant Field Values
-
DAX_JOB
public static final java.lang.String DAX_JOB
The constant string to write for dax job notifications.- See Also:
- Constant Field Values
-
DELIMITER
public static final java.lang.String DELIMITER
The delimiter with which to separate different fields in the notifications file.- See Also:
- Constant Field Values
-
mBag
protected PegasusBag mBag
The bag of initialization objects.
-
mSubmitFileDir
protected java.lang.String mSubmitFileDir
The directory where all the submit files are to be generated.
-
mProps
protected PegasusProperties mProps
The object holding all the properties pertaining to Pegasus.
-
mPOptions
protected PlannerOptions mPOptions
The object containing the command line options specified to the planner at runtime.
-
mLogger
protected LogManager mLogger
The handle to the logging object.
-
mNotificationsWriter
private java.io.PrintWriter mNotificationsWriter
The handle to the PrintWriter that writes out the notifications file
-
-
Method Detail
-
initialize
public void initialize(PegasusBag bag) throws CodeGeneratorException
Initializes the Code Generator implementation.- Specified by:
initialize
in interfaceCodeGenerator
- Parameters:
bag
- the bag of initialization objects.- Throws:
CodeGeneratorException
- in case of any error occurring code generation.
-
generateCode
public java.util.Collection<java.io.File> generateCode(ADag dag) throws CodeGeneratorException
Generates the notifications input file. The method initially generates work-flow level notification records, followed by job-level notification records.- Specified by:
generateCode
in interfaceCodeGenerator
- Parameters:
dag
- the concrete work-flow.- Returns:
- the Collection of
File
objects for the files written out. - Throws:
CodeGeneratorException
- in case of any error occurring code generation.
-
generateCode
public void generateCode(ADag dag, Job job) throws CodeGeneratorException
Not implemented- Specified by:
generateCode
in interfaceCodeGenerator
- Parameters:
dag
- the work-flowjob
- the job for which the code is to be generated.- Throws:
CodeGeneratorException
-
startMonitoring
public boolean startMonitoring()
Not implemented- Specified by:
startMonitoring
in interfaceCodeGenerator
- Returns:
- boolean indicating whether could successfully start the monitor daemon or not.
-
reset
public void reset() throws CodeGeneratorException
Not implemented- Specified by:
reset
in interfaceCodeGenerator
- Throws:
CodeGeneratorException
- in case of any error occuring code generation.
-
-