| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectedu.sdsc.inca.agent.ReporterManagerProxy
public class ReporterManagerProxy
Class for managing Grid proxy credentials. This class is used for 2 purposes: 1) When using remoteInvocationMethod 'globus', we use the Globus CoG API to transfer files and launch processes on a remote resource. The CoG API uses Globus services on the remote resource which needs a valid credential to authenticate. A proxy credential is a limited lifetime credential which allows you to authenticate to Globus services without typing in a password. Since a proxy has a limited lifetime and we anticipate the Reporter Agent and Reporter Manager to be long living processes, we can either create a long running proxy credential (not so good) or provide the ability to retrieve new proxy credentials from a MyProxy server. This class stores all the information to retrieve proxy credentials automatically from a MyProxy server. 2) Most likely the Reporter Managers will be executing reporters that need a valid proxy credential as part of their test, benchmark, or whatever. As with above, we need a way to refresh a proxy credential automatically. The information in this class will be passed to a remote reporter manager so that a process can be forked to retrieve new proxy credentials periodically.
| Constructor Summary | |
|---|---|
| ReporterManagerProxy(java.lang.String hostname,
                     int port,
                     java.lang.String username,
                     java.lang.String password,
                     java.lang.String dn,
                     int lifetime)Create a new Reporter Manager proxy object with the following fields already set: | |
| ReporterManagerProxy(java.lang.String resource,
                     edu.sdsc.inca.util.ResourcesWrapper resources)Create a new Reporter Manager proxy object. | |
| Method Summary | |
|---|---|
|  java.lang.String | getDN()Return the subject DN of the MyProxy server. | 
|  java.lang.String | getHostname()Return the hostname of the MyProxy server. | 
|  int | getLifetime()Return the lifetime of which we will request proxy credentials from the MyProxy server. | 
|  java.lang.String | getPassword()The password to use to authenticate to the MyProxy server. | 
|  int | getPort()Return port of MyProxy server. | 
|  org.ietf.jgss.GSSCredential | getProxy()Retrieve a new proxy credential from the MyProxy server and return it. | 
|  java.lang.String | getUsername()Return username that the credential is stored under. | 
|  void | send(edu.sdsc.inca.protocol.ProtocolWriter writer,
     edu.sdsc.inca.protocol.ProtocolReader reader)Send the MyProxy information stored in this object to the specified writer. | 
|  void | setDN(java.lang.String dn)Set the subject DN for the MyProxy server if needed (i.e., if Globus will not accept host DN) | 
|  void | setHostname(java.lang.String hostname)Set the hostname of the MyProxy server. | 
|  void | setLifetime(int lifetime)Set the lifetime for new proxy credentials. | 
|  void | setPassword(java.lang.String password)Set the password for retrieving proxy credentials from the MyProxy server. | 
|  void | setPort(int port)Set the port of the MyProxy server if needed. | 
|  void | setUsername(java.lang.String username)Set the username for retrieving proxy credentials from the MyProxy server. | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
|---|
public ReporterManagerProxy(java.lang.String resource,
                            edu.sdsc.inca.util.ResourcesWrapper resources)
                     throws edu.sdsc.inca.ConfigurationException
resource - The name of the resource to send proxies to.resources - The resource configuration information.
edu.sdsc.inca.ConfigurationException
public ReporterManagerProxy(java.lang.String hostname,
                            int port,
                            java.lang.String username,
                            java.lang.String password,
                            java.lang.String dn,
                            int lifetime)
hostname - The host where the MyProxy server is running onport - The port where the MyProxy server is running on
                 [default: 7512]username - The username the proxy credential is stored underpassword - The password to authenticate to the MyProxy serverdn - The DN of the MyProxy server (use null if standard DN)lifetime - The lifetime of the new proxy credential
                 [default: 12 hours]| Method Detail | 
|---|
public java.lang.String getDN()
public java.lang.String getHostname()
public int getLifetime()
public java.lang.String getPassword()
public org.ietf.jgss.GSSCredential getProxy()
                                     throws org.globus.myproxy.MyProxyException
org.globus.myproxy.MyProxyException - if problem retrieving proxy credentialpublic int getPort()
public java.lang.String getUsername()
public void send(edu.sdsc.inca.protocol.ProtocolWriter writer,
                 edu.sdsc.inca.protocol.ProtocolReader reader)
          throws java.io.IOException,
                 edu.sdsc.inca.protocol.ProtocolException
writer - Writer to remote process to send MyProxy information.reader - Reader to remote process to read confirmation from.
java.io.IOException
edu.sdsc.inca.protocol.ProtocolExceptionpublic void setDN(java.lang.String dn)
dn - Subject DN of MyProxy serverpublic void setHostname(java.lang.String hostname)
hostname - hostname of the MyProxy server.public void setLifetime(int lifetime)
lifetime - The period of validity for new proxy credentials in hours.public void setPassword(java.lang.String password)
password - A password of at least 6 characters.public void setPort(int port)
port - Port number.public void setUsername(java.lang.String username)
username - A username.| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||