|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.isi.pegasus.planner.cluster.aggregator.Abstract
public abstract class Abstract
An abstract implementation of the JobAggregator interface, which the other implementations can choose to extend.
| Field Summary | |
|---|---|
static String |
CLUSTERED_JOB_PREFIX
The prefix that is assigned to the jobname of the collapsed jobs to get the jobname for the fat job. |
static String |
DERIVATION_NAMESPACE
The derivation namespace for the cluster jobs. |
static String |
DERIVATION_VERSION
The version number for the derivations for cluster jobs. |
protected PegasusBag |
mBag
Bag of initialization objects. |
protected ADag |
mClusteredADag
The handle to the ADag object that contains the workflow being clustered. |
protected String |
mDirectory
The directory, where the stdin file of the fat jobs are created. |
protected GridStartFactory |
mGridStartFactory
The handle to the GridStart Factory. |
protected LogManager |
mLogger
The handle to the LogManager that logs all the messages. |
static String |
MONITORD_COMMENT_MARKER
The marker to designate a line in the input file reserved for monitord purposes. |
protected PegasusProperties |
mProps
The object holding all the properties pertaining to Pegasus. |
protected SiteStore |
mSiteStore
Handle to the site catalog store |
protected TransformationCatalog |
mTCHandle
The handle to the transformation catalog. |
static String |
TRANSFORMATION_NAMESPACE
The transformation namespace for the cluster jobs. |
static String |
TRANSFORMATION_VERSION
The version number for the derivations for cluster jobs |
| Fields inherited from interface edu.isi.pegasus.planner.cluster.JobAggregator |
|---|
VERSION |
| Constructor Summary | |
|---|---|
Abstract()
The default constructor. |
|
| Method Summary | |
|---|---|
abstract String |
aggregatedJobArguments(AggregatedJob job)
Returns the arguments with which the AggregatedJob
needs to be invoked with. |
AggregatedJob |
constructAbstractAggregatedJob(List jobs,
String name,
String id)
Constructs a new aggregated job that contains all the jobs passed to it. |
AggregatedJob |
constructAbstractAggregatedJob(List jobs,
String name,
String id,
String mergeLFN)
Constructs an abstract aggregated job that has a handle to the appropriate JobAggregator that will be used to aggregate the jobs. |
private TransformationCatalogEntry |
defaultTCEntry(String name,
String executableBasename,
String site)
Returns a default TC entry to be used in case entry is not found in the transformation catalog. |
protected boolean |
entryNotInTC(String namespace,
String name,
String version,
String executableBasename,
String site)
Determines whether there is NOT an entry in the transformation catalog for a particular transformation on a particular site. |
protected String |
getCommentString(Job job,
int taskid)
Generates the comment string for the job . |
static String |
getCompleteTranformationName(String name)
A convenience method to return the complete transformation name being used to construct jobs in this class. |
protected TransformationCatalogEntry |
getTCEntry(Job job)
Helper method to get an entry from the transformation catalog for an installed executable. |
void |
initialize(ADag dag,
PegasusBag bag)
Initializes the JobAggregator impelementation |
void |
makeAbstractAggregatedJobConcrete(AggregatedJob job)
Enables the abstract clustered job for execution and converts it to it's executable form |
protected void |
setDirectory(String directory)
Sets the directory where the stdin files are to be generated. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface edu.isi.pegasus.planner.cluster.JobAggregator |
|---|
abortOnFristJobFailure, entryNotInTC, getClusterExecutableBasename, getClusterExecutableLFN, setAbortOnFirstJobFailure |
| Field Detail |
|---|
public static final String CLUSTERED_JOB_PREFIX
public static final String TRANSFORMATION_NAMESPACE
public static final String TRANSFORMATION_VERSION
public static final String DERIVATION_NAMESPACE
public static final String DERIVATION_VERSION
public static final String MONITORD_COMMENT_MARKER
protected String mDirectory
protected PegasusProperties mProps
protected LogManager mLogger
protected TransformationCatalog mTCHandle
protected SiteStore mSiteStore
protected ADag mClusteredADag
protected GridStartFactory mGridStartFactory
protected PegasusBag mBag
| Constructor Detail |
|---|
public Abstract()
| Method Detail |
|---|
public static String getCompleteTranformationName(String name)
name - the name of the transformation
public void initialize(ADag dag,
PegasusBag bag)
initialize in interface JobAggregatordag - the workflow that is being clustered.bag - the bag of objects that is useful for initialization.public abstract String aggregatedJobArguments(AggregatedJob job)
AggregatedJob
needs to be invoked with.
job - the AggregatedJob for which the arguments have
to be constructed.
public AggregatedJob constructAbstractAggregatedJob(List jobs,
String name,
String id)
constructAbstractAggregatedJob in interface JobAggregatorjobs - the list of Job objects that need to be
collapsed. All the jobs being collapsed should be scheduled
at the same pool, to maintain correct semantics.name - the logical name of the jobs in the list passed to this
function.id - the id that is given to the new job.
Job object corresponding to the aggregated
job containing the jobs passed as List in the input,
null if the list of jobs is empty
public AggregatedJob constructAbstractAggregatedJob(List jobs,
String name,
String id,
String mergeLFN)
jobs - the list of SubInfo objects that need to be
collapsed. All the jobs being collapsed should be scheduled
at the same pool, to maintain correct semantics.name - the logical name of the jobs in the list passed to this
function.id - the id that is given to the new job.mergeLFN - the logical name for the aggregated job that has to be
constructed.
SubInfo object corresponding to the aggregated
job containing the jobs passed as List in the input,
null if the list of jobs is emptypublic void makeAbstractAggregatedJobConcrete(AggregatedJob job)
makeAbstractAggregatedJobConcrete in interface JobAggregatorjob - the abstract clustered job
protected String getCommentString(Job job,
int taskid)
job - the job for whichtaskid - the task id to put in.
protected TransformationCatalogEntry getTCEntry(Job job)
job - the job whose corresponding TransformationCatalogEntry you want.
private TransformationCatalogEntry defaultTCEntry(String name,
String executableBasename,
String site)
name - the logical name for the clustering transformation.executableBasename - the basename for the executable in the bin directory
of a Pegasus installationsite - the site for which the default entry is required.
protected boolean entryNotInTC(String namespace,
String name,
String version,
String executableBasename,
String site)
namespace - the logical namespace of the transformation.name - the logical name of the transformation.version - the version of the transformation.executableBasename - basename of the executable that does the clustering.site - the site at which existence check is required.
protected void setDirectory(String directory)
directory - the path to the directory to which it needs to be set.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||