|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object edu.sdsc.inca.agent.AccessMethod edu.sdsc.inca.agent.access.Globus
public class Globus
A class that implements AccessMethod using Globus commands (i.e., gridFTP and GRAM) for transferring files and running processes on remote resources.
Nested Class Summary | |
---|---|
class |
Globus.GlobusStatusListener
A subclass of StatusListener will be notified when our job's status has changed |
Field Summary | |
---|---|
protected java.lang.String |
gramContact
|
static java.lang.String |
GRIDFTP_PROVIDER
|
protected java.lang.String |
gridFtpContact
|
static int |
MINIMUM_LIFETIME
|
Constructor Summary | |
---|---|
Globus(java.lang.String resource,
edu.sdsc.inca.util.ResourcesWrapper resources,
java.lang.String temp,
java.lang.String provider)
Create a new remote process controlling it via Globus commands. |
Method Summary | |
---|---|
void |
get(java.lang.String[] remoteFiles,
java.lang.String localDirPath)
Transfer a list of remote files to a directory on the local machine using GridFTP. |
boolean |
isActive()
Check whether the remote process is alive. |
java.lang.String |
prependHome(java.lang.String path)
Given a path relative to the home directory, prepend '$(HOME)/' to the path and return the new string. |
void |
put(java.lang.String[] localFiles,
java.lang.String remoteDirPath)
Transfer a list of local files to a directory on a remote machine using GridFTP. |
AccessMethodOutput |
run(java.lang.String executable,
java.lang.String[] arguments,
java.lang.String stdin,
java.lang.String directory)
Execute the specified process on the remote resource. |
void |
setProxy(ReporterManagerProxy proxy)
Set the proxy for Globus related tasks. |
void |
start(java.lang.String executable,
java.lang.String[] arguments,
java.lang.String stdin,
java.lang.String directory)
Start a process on a remote machine. |
void |
stop()
Kill the remote process that was started by the start() call. |
Methods inherited from class edu.sdsc.inca.agent.AccessMethod |
---|
create, get, put, run, run, start, start |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int MINIMUM_LIFETIME
public static final java.lang.String GRIDFTP_PROVIDER
protected java.lang.String gridFtpContact
protected java.lang.String gramContact
Constructor Detail |
---|
public Globus(java.lang.String resource, edu.sdsc.inca.util.ResourcesWrapper resources, java.lang.String temp, java.lang.String provider) throws edu.sdsc.inca.ConfigurationException
resource
- The name of the resource to start the process onresources
- The resource configuration information.temp
- Path to a directory for temporary files to be storedprovider
- Indicate version of globus to use (i.e., GT2 or GT4)
edu.sdsc.inca.ConfigurationException
- if trouble configuring globus resourceMethod Detail |
---|
public void get(java.lang.String[] remoteFiles, java.lang.String localDirPath) throws AccessMethodException
get
in class AccessMethod
remoteFiles
- Array of paths to remote files that will be transferedlocalDirPath
- Path to the local directory where the remote file
will be placed
AccessMethodException
- if unable to put filepublic boolean isActive()
isActive
in class AccessMethod
public java.lang.String prependHome(java.lang.String path)
prependHome
in class AccessMethod
path
- A path relative to the user's home directory
public AccessMethodOutput run(java.lang.String executable, java.lang.String[] arguments, java.lang.String stdin, java.lang.String directory) throws AccessMethodException, java.lang.InterruptedException
run
in class AccessMethod
executable
- Path to the remote executable.arguments
- Contains the arguments that should be passed to the
executablestdin
- A string that will be passedd in as stdin to the process
when it is starteddirectory
- Path to the directory where the process will be executed
from
AccessMethodException
- if unable to execute remote process
java.lang.InterruptedException
- if interrupted while running remote processpublic void setProxy(ReporterManagerProxy proxy)
proxy
- The reporter manager proxy object that can be used to
retrieve a proxy from the MyProxy server if availablepublic void start(java.lang.String executable, java.lang.String[] arguments, java.lang.String stdin, java.lang.String directory) throws AccessMethodException
start
in class AccessMethod
executable
- Path to the remote executable.arguments
- Contains the arguments that should be passed to the
executablestdin
- A string that will be passedd in as stdin to the process
when it is starteddirectory
- Path to the directory where the process will be executed
from
AccessMethodException
- if unable to start remote processpublic void stop() throws AccessMethodException
stop
in class AccessMethod
AccessMethodException
public void put(java.lang.String[] localFiles, java.lang.String remoteDirPath) throws AccessMethodException
put
in class AccessMethod
localFiles
- Array of local file paths that will be transferedremoteDirPath
- Path to the directory on the remote machine where
the local file will be placed
AccessMethodException
- if unable to transfer files
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |