|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.rmi.server.RemoteObject
java.rmi.server.RemoteServer
java.rmi.server.UnicastRemoteObject
org.ourgrid.common.rmi.OurgridUnicastRemoteObject
org.ourgrid.peer.ebgum.GumProxy
public class GumProxy
It will be the remote object to be contacted by GumClient
. It
represents a proxy to make possible remote connections between a
GumClient
and the EBGumFacade
. The peer holds
a proxy to every Mygrid-UserAgent connection, so we have an in-band
connection between the two components.
Field Summary | |
---|---|
static long |
serialVersionUID
Serial identification of the class. |
Fields inherited from class java.rmi.server.RemoteObject |
---|
ref |
Constructor Summary | |
---|---|
GumProxy(EBGum gridMachineFacade,
EBPeerManagerFacade peerManagerFacade,
long requestID)
Default constructor |
|
GumProxy(EBGum gridMachineFacade,
EBPeerManagerFacade peerManagerFacade,
long requestID,
MGSecureClientSocketFactory secureClientSocketFactory,
MGSecureServerSocketFactory secureServerSocketFactory,
int securePort)
Constructor with SecureSocketFactories. |
Method Summary | |
---|---|
void |
changeFilePermissions(java.io.File file,
int permissions)
Change the permissions of a file located at the Grid Machine. |
java.lang.String |
createPlaypen(int size)
Creates a playpen in the Grid Machine. |
java.lang.String |
createStorageDirectory()
Creates the storage directory. |
boolean |
fileExists(java.io.File file)
Check if the file denoted by file abstraction exists. |
byte[] |
getFile(java.lang.String filePath,
long filePos,
int size)
Get an array of bytes FROM a file that is located at the Grid Machine. |
java.lang.String |
getRemoteFileDigest(java.io.File remoteFile)
Used to return the digest representation of a file. |
long |
getRemoteFileLastModification(java.io.File remoteFile,
boolean normalized)
Gets the time when the last modification in the specified file has occurred. |
long |
getRemoteFileLength(java.io.File remoteFile)
Determines the remote file size in bytes. |
ExecutorResult |
getResult(ExecutorHandle handle)
Gives access to the result of execution. |
GumStatus |
getStatus()
Gets the status of the grid machine. |
java.lang.String |
getStorageDirectory()
Returns the remote storage directory. |
void |
invalidate()
Makes this proxy invalid. |
void |
putFile(java.lang.String remoteFile,
byte[] data,
boolean firstSlice)
Put an array of bytes INTO the file specified by removeFile
at the Grid Machine. |
ExecutorHandle |
remoteExecute(java.lang.String remoteDir,
java.lang.String command,
java.util.Map<java.lang.String,java.lang.String> envVars)
Executes a remote task command in a specific directory on the grid machine. |
void |
startReplica()
Determines a replica start. |
void |
stopReplica()
Tells the user agent to kill any executing tasks and also clean the environment to a next execution. |
Methods inherited from class java.rmi.server.UnicastRemoteObject |
---|
clone, exportObject, exportObject, exportObject, unexportObject |
Methods inherited from class java.rmi.server.RemoteServer |
---|
getClientHost, getLog, setLog |
Methods inherited from class java.rmi.server.RemoteObject |
---|
equals, getRef, hashCode, toString, toStub |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final long serialVersionUID
Constructor Detail |
---|
public GumProxy(EBGum gridMachineFacade, EBPeerManagerFacade peerManagerFacade, long requestID) throws java.rmi.RemoteException
gridMachineFacade
- the EBGum
that this proxy will
forward callspeerManagerFacade
- a reference to the peer manager, useful to
report when a gum is lostrequestID
-
java.rmi.RemoteException
public GumProxy(EBGum gridMachineFacade, EBPeerManagerFacade peerManagerFacade, long requestID, MGSecureClientSocketFactory secureClientSocketFactory, MGSecureServerSocketFactory secureServerSocketFactory, int securePort) throws java.rmi.RemoteException
gridMachineFacade
- peerManagerFacade
- secureClientSocketFactory
- secureServerSocketFactory
- securePort
-
java.rmi.RemoteException
Method Detail |
---|
public void putFile(java.lang.String remoteFile, byte[] data, boolean firstSlice) throws java.rmi.RemoteException, java.io.IOException
Gum
removeFile
at the Grid Machine.
putFile
in interface Gum
remoteFile
- the name of file that where the array of bytes will be
appendeddata
- an array of bytes that must be appended to the file.firstSlice
- Indicates if the array of bytes is the first slice of
the file or not. If true and remoteFile exists,
the file will be overwritten. Otherwise, the array of bytes will
just be appended to the file.
java.rmi.RemoteException
- if some RMI error occurs during the putFile()
method invocation.
java.io.IOException
- if some error occurs during the writing process.Gum.putFile(String, byte[], boolean)
public byte[] getFile(java.lang.String filePath, long filePos, int size) throws java.rmi.RemoteException, java.io.IOException
Gum
getFile
in interface Gum
filePath
- the path where the file is located.filePos
- the position into the file from the array will be read.size
- the size of array of bytes that must be read.
java.rmi.RemoteException
- if some RMI error occurs during the method
invocation
java.io.IOException
- if some error occurs during the reading process.Gum.getFile(String, long, int)
public java.lang.String createPlaypen(int size) throws java.rmi.RemoteException, UnableToCreatePlaypenException
Gum
createPlaypen
in interface Gum
size
- The number of bytes that must be reserved to the playpen.
java.rmi.RemoteException
- If some RMI error occurs during this method
invocation.
UnableToCreatePlaypenException
- if the playpen could not be
created. This will be usually due to I/O issues, like user space
quota exceededGum.createPlaypen( int )
public java.lang.String createStorageDirectory() throws java.rmi.RemoteException, UnableToCreateStorageException
Gum
createStorageDirectory
in interface Gum
java.rmi.RemoteException
- if some RMI error occurs during this method
invocation.
UnableToCreateStorageException
- if the storage directory could not
be created. This will be usually due to I/O issues, like user
space quota exceededGum.createStorageDirectory()
public java.lang.String getStorageDirectory() throws java.rmi.RemoteException
Gum
getStorageDirectory
in interface Gum
java.rmi.RemoteException
Gum.getStorageDirectory()
public boolean fileExists(java.io.File file) throws java.rmi.RemoteException
Gum
fileExists
in interface Gum
file
- the file that will be searched
java.rmi.RemoteException
- if some RMI error occurs during the method
invocationGum.fileExists(File)
public long getRemoteFileLength(java.io.File remoteFile) throws java.rmi.RemoteException, java.io.IOException
Gum
getRemoteFileLength
in interface Gum
remoteFile
- The file located at the Grid Machine which the size
must be determined.
java.rmi.RemoteException
- if some RMI error occurs during the method
invocation
java.io.IOException
- If some problem occurs during the access to the file.Gum.getRemoteFileLength(File)
public long getRemoteFileLastModification(java.io.File remoteFile, boolean normalized) throws java.rmi.RemoteException, java.io.IOException
Gum
getRemoteFileLastModification
in interface Gum
remoteFile
- The file located at the Grid Machine which the
modification time will be determined.normalized
- Indicates if the last modification time must be
normalized to the TIMEZONE-0.
java.rmi.RemoteException
- if some RMI error occurs during the method
invocation
java.io.IOException
- if during the access to the file some problem occurs.Gum.getRemoteFileLastModification(File,
boolean)
public java.lang.String getRemoteFileDigest(java.io.File remoteFile) throws java.rmi.RemoteException, UnableToDigestFileException
Gum
getRemoteFileDigest
in interface Gum
remoteFile
- if the file used to generate the digest
java.rmi.RemoteException
- if some RMI error occurs during the method
invocation
UnableToDigestFileException
- if there is any problem on the digest
generation, like the file is not found, I/O errors or the digest
algorithm is not valid.Gum.getRemoteFileDigest(java.io.File)
public void changeFilePermissions(java.io.File file, int permissions) throws java.rmi.RemoteException, java.io.IOException
Gum
changeFilePermissions
in interface Gum
file
- the file which permissions will be changed.permissions
- a string specifying the permissions. The string must
be composed of three numbers, like in the UNIX-like systems. For
instance, "rwxrwx---" must be represented by "770".
java.rmi.RemoteException
- if some RMI error occurs during the method
invocation
java.io.IOException
- if some error occurs while trying to read or write
current permission of file.Gum.changeFilePermissions(java.io.File, int)
public ExecutorHandle remoteExecute(java.lang.String remoteDir, java.lang.String command, java.util.Map<java.lang.String,java.lang.String> envVars) throws java.rmi.RemoteException, ExecutorException
Gum
remoteExecute
in interface Gum
remoteDir
- directory where the command will be executed. For
example, in a Unix environment, a cd
to this
directory will be done before running the specified command.command
- the command that will be executed in the specified
directory.envVars
- a Map
containing a set of
environment variable names as the keys and the corresponding
values as the values set. All these variables will be set before
the execution of the command. The keys and values of Map should be
String or, at least, override the Object#toString
method.
Executor
class.
java.rmi.RemoteException
- if some RMI error occurs during the method
invocation.
ExecutorException
- if some error occurs during the remote
execution of the commandGum.remoteExecute(String, String, Map)
public ExecutorResult getResult(ExecutorHandle handle) throws java.rmi.RemoteException, ExecutorException
Gum
getResult
in interface Gum
handle
- a handle that identifies the execution of interest
java.rmi.RemoteException
ExecutorException
Gum.getResult(ExecutorHandle)
public void invalidate()
invalidate
in interface InvalidatableProxy
public GumStatus getStatus()
Gum
getStatus
in interface Gum
Gum.getStatus()
public void startReplica() throws java.rmi.RemoteException
Gum
startReplica
in interface Gum
java.rmi.RemoteException
- if some RMI error occurs during this method
invocation.Gum.startReplica()
public void stopReplica() throws java.rmi.RemoteException
Gum
stopReplica
in interface Gum
java.rmi.RemoteException
- If some RMI error occurs during this method
invocation.Gum.stopReplica()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |