edu.isi.pegasus.planner.catalog.site.impl.old
Modifier and Type | Field and Description |
---|---|
protected boolean |
mDeepStorageStructure
A boolean indicating whether to have a deep directory structure for
the storage directory or not.
|
protected LogManager |
mLogger
The LogManager object which is used to log all the messages.
|
protected String |
mLogMsg
The String holding the log message.
|
protected String |
mPoolProvider
The path to the pool information provider.
|
protected PegasusProperties |
mProps
The object holding all the properties pertaining to Pegasus.
|
protected String |
mStorageDir
This contains the storage directory relative to the se mount point of the
pool.
|
protected UserOptions |
mUserOpts
Handle to the Singleton instance containing the options passed to the
planner at run time.
|
protected String |
mWorkDir
The working directory relative to the mount point of the execution pool.
|
static String |
PEGASUS_HOME
The name of the environment variable PEGASUS_HOME.
|
static String |
VDS_HOME
The name of the environment variable VDS_HOME.
|
Constructor and Description |
---|
PoolInfoProvider() |
Modifier and Type | Method and Description |
---|---|
String |
getEnvironmentVariable(String siteID,
String envVariable)
Returns an environment variable for a particular site set in the
Site Catalog.
|
String |
getExecPoolWorkDir(Job job)
This determines the working directory on remote execution pool for a
particular job.
|
String |
getExecPoolWorkDir(String executionPool)
This determines the working directory on remote execution pool on the
basis of whether an absolute path is specified in the pegasus.dir.exec directory
or a relative path.
|
String |
getExecPoolWorkDir(String siteID,
String path)
This determines the working directory on remote execution pool on the
basis of whether an absolute path is specified in the pegasus.dir.exec
directory or a relative path.
|
String |
getExecPoolWorkDir(String siteID,
String path,
int jobClass)
This determines the working directory on remote execution pool on the
basis of whether an absolute path is specified in the pegasus.dir.exec directory
or a relative path.
|
abstract List |
getGridFTPServers(String siteID)
It returns all the gridftp servers corresponding to a specified pool.
|
abstract List |
getJobmanagers(String siteID)
It returns all the jobmanagers corresponding to a specified site.
|
abstract List |
getJobmanagers(String siteID,
String universe)
It returns all the jobmanagers corresponding to a specified pool and
universe.
|
String |
getPegasusHome(String siteID)
Returns the value of PEGASUS_HOME for a site.
|
abstract SiteInfo |
getPoolEntry(String siteID,
String universe)
Gets the pool information from the pool.config file on the basis
of the name of the pool, and the universe.
|
abstract String |
getPoolMode()
Returns a textual description of the pool mode being used.
|
abstract List |
getPoolProfile(String siteID)
It returns the profile information associated with a particular pool.
|
List |
getPoolProfile(String siteID,
String namespace)
It returns profile information associated with a particular namespace and
pool.
|
abstract List |
getPools()
It returns all the pools available in the site catalog
|
String |
getSeMountPoint(SiteInfo site)
Return the storage mount point for a particular pool.
|
abstract VDSSysInfo |
getSysinfo(String siteID)
Returns the System information for a single site.
|
abstract Map |
getSysinfos(List siteids)
Returns the System information for a bunch of sites.
|
SiteInfo |
getTXPoolEntry(String poolName)
Gets the pool object to be used for the transfer universe.
|
String |
getURLPrefix(String poolName)
Returns the url prefix of a gridftp server on the pool.
|
String |
getVDS_HOME(String siteID)
Returns the value of VDS_HOME for a site.
|
void |
loadNonSingletonObjects(String propFileName)
It loads the objects using their non singleton implementations.
|
protected void |
loadSingletonObjects()
It loads the objects that the pool providers need in a singleton manner,
wherever possible.
|
protected void |
logMessage(String msg)
Logs the message to a logging stream.
|
static PoolInfoProvider |
nonSingletonInstance(String poolProvider,
String propFileName)
The method that returns a Non Singleton instance of the dervived
InfoProvider class.
|
abstract boolean |
removeGridFtp(String siteID,
String urlPrefix)
This is a soft state remove, that removes a gridftp server from a particular
pool entry.
|
abstract boolean |
removeJobManager(String siteID,
String universe,
String jobManagerContact)
This is a soft state remove, that removes a jobmanager from a particular
pool entry.
|
GridFTPServer |
selectGridFtp(ArrayList ftp)
Return a random gridftp url from the list of gridftp url's.
|
String |
selectLRC(ArrayList lrcs)
Return a random lrc url from the list of lrc url's.
|
String |
selectWorkdir(WorkDir workdir)
Returns the path to the execution mount point (The Workdir).
|
static PoolInfoProvider |
singletonInstance(String poolProvider)
The method which returns a Singleton instance of the derived InfoProvider
class.
|
public static final String PEGASUS_HOME
public static final String VDS_HOME
protected LogManager mLogger
protected String mLogMsg
protected String mPoolProvider
protected PegasusProperties mProps
protected String mWorkDir
protected String mStorageDir
protected UserOptions mUserOpts
protected boolean mDeepStorageStructure
public static PoolInfoProvider singletonInstance(String poolProvider)
poolProvider
- the url to site catalog source. Can be a URL.public static PoolInfoProvider nonSingletonInstance(String poolProvider, String propFileName)
poolProvider
- the path to the file containing the pool information.propFileName
- the name of the properties file that needs to be
picked up from PEGASUS_HOME/etc directory.If it is null,
then the default file should be picked up.protected void loadSingletonObjects()
public void loadNonSingletonObjects(String propFileName)
propFileName
- the name of the properties file that needs to be
picked up from PEGASUS_HOME/etc directory.If it is null,
then the default properties file should be picked up.public abstract Map getSysinfos(List siteids)
siteids
- List The siteid whose system information is requiredorg.griphyn.common.classes.VDSSysInfo
public abstract VDSSysInfo getSysinfo(String siteID)
siteID
- String The site whose system information is requestedorg.griphyn.common.classes.VDSSysInfo
public abstract SiteInfo getPoolEntry(String siteID, String universe)
siteID
- the name of the siteuniverse
- the execution universe for the jobpublic abstract List getPoolProfile(String siteID)
siteID
- the name of the site, whose profile information you want.Profile
objects
null if the information about the site is not with the pool provider.org.griphyn.cPlanner.classes.Profile
public abstract List getJobmanagers(String siteID)
siteID
- the name of the site at which the jobmanager runs.JobManager
, each referring to
one jobmanager contact string. An empty list if no jobmanagers
found.public abstract List getJobmanagers(String siteID, String universe)
siteID
- the name of the site at which the jobmanager runs.universe
- the gvds universe with which it is associated.JobManager
, each referring to
one jobmanager contact string. An empty list if no jobmanagers
found.public abstract List getGridFTPServers(String siteID)
siteID
- the name of the site at which the jobmanager runs.GridFTPServer
, each referring to one
GridFtp Server.public abstract List getPools()
public abstract boolean removeJobManager(String siteID, String universe, String jobManagerContact)
siteID
- the name of the site at which the jobmanager runs.universe
- the gvds universe with which it is associated.jobManagerContact
- the contact string to the jobmanager.public abstract boolean removeGridFtp(String siteID, String urlPrefix)
siteID
- the name of the site at which the gridftp runs.urlPrefix
- the url prefix containing the protocol,hostname and port.public abstract String getPoolMode()
public String selectLRC(ArrayList lrcs)
lrcs
- Arraylist of LRC
objects.org.griphyn.cPlanner.classes.LRC
public String selectWorkdir(WorkDir workdir) throws Exception
workdir
- the WorkDir
object containing the workdir
information.Exception
public GridFTPServer selectGridFtp(ArrayList ftp)
ftp
- Takes an ArrayList of GridFTPServer
Objects.org.griphyn.cPlanner.classes.GridFTPServer
public String getVDS_HOME(String siteID)
siteID
- the name of the site.public String getPegasusHome(String siteID)
siteID
- the name of the site.public String getEnvironmentVariable(String siteID, String envVariable)
siteID
- the name of the site.envVariable
- the environment variable whose value is required.public List getPoolProfile(String siteID, String namespace)
siteID
- the name of the site, whose profile information you want.namespace
- the namespace correspoinding to which the profile
information of a particular site is desired.Profile
objects
NULL when the information about the site is not there or no
profile information associated with the site.org.griphyn.cPlanner.classes.Profile
public String getExecPoolWorkDir(String executionPool)
executionPool
- the pool where a job has to be executed.RuntimeException
- in case of site not found in the site catalog.public String getExecPoolWorkDir(Job job)
job
- Job
object for the job.RuntimeException
- in case of site not found in the site catalog.public String getExecPoolWorkDir(String siteID, String path)
siteID
- the name of the site where a job has to be executed.path
- the relative path that needs to be appended to the
workdir from the execution pool.RuntimeException
- in case of site not found in the site catalog.public String getExecPoolWorkDir(String siteID, String path, int jobClass)
siteID
- the name of the site where the job has to be executed.path
- the relative path that needs to be appended to the
workdir from the execution pool.jobClass
- the class of the job.RuntimeException
- in case of site not found in the site catalog.public String getURLPrefix(String poolName)
poolName
- the name of the pool.public String getSeMountPoint(SiteInfo site)
site
- SiteInfo object of the site for which you want the
storage-mount-point.public SiteInfo getTXPoolEntry(String poolName)
poolName
- the name of the poolprotected void logMessage(String msg)
msg
- the message to be logged.