View Javadoc

1   package fr.in2p3.jsaga.adaptor.security;
2   
3   import fr.in2p3.jsaga.adaptor.security.impl.GSSCredentialSecurityCredential;
4   import org.globus.myproxy.CredentialInfo;
5   import org.globus.myproxy.InfoParams;
6   import org.globus.myproxy.MyProxy;
7   import org.globus.util.Util;
8   import org.ietf.jgss.GSSCredential;
9   
10  import java.io.File;
11  import java.io.PrintStream;
12  
13  /* ***************************************************
14  * *** Centre de Calcul de l'IN2P3 - Lyon (France) ***
15  * ***             http://cc.in2p3.fr/             ***
16  * ***************************************************
17  * File:   MyProxySecurityCredential
18  * Author: Sylvain Reynaud (sreynaud@in2p3.fr)
19  * Date:   13 ao�t 2007
20  * ***************************************************
21  * Description:                                      */
22  /**
23   *
24   */
25  public class MyProxySecurityCredential extends GSSCredentialSecurityCredential implements SecurityCredential {
26      private String m_server;
27      private InfoParams m_proxyParameters;
28      
29      public MyProxySecurityCredential(GSSCredential proxy, File certRepository, String server, InfoParams proxyParameters) {
30          super(proxy, certRepository);
31          m_server = server;
32          m_proxyParameters = proxyParameters;
33      }
34  
35      /** override super.dump() */
36      public void dump(PrintStream out) throws Exception {
37          MyProxy server = MyProxySecurityAdaptor.getServer(m_server);
38  
39          // server info
40          CredentialInfo[] infos = server.info(m_proxy, m_proxyParameters);
41          out.println("Owner    : "+infos[0].getOwner());
42          for (int i=0;i<infos.length;i++) {
43          	CredentialInfo info = infos[i];
44              out.println ((info.getName() == null) ? "default:" : info.getName() +":");
45  	        out.println("  StartTime: "+info.getStartTimeAsDate());
46  	        out.println("  EndTime  : "+info.getEndTimeAsDate());
47  	        long now = System.currentTimeMillis();
48  	        if (info.getEndTime() > now) {
49  	            out.println("  LifeTime : "+Util.formatTimeSec((info.getEndTime() - now)/1000));
50  	        } else {
51  	            out.println("  LifeTime : expired");
52  	        }
53  	        //if (info.getName() != null) {
54  	        //    out.println("  Name     : "+info.getName());
55  	        //}
56  	        if (info.getRetrievers() != null) {
57  	            out.println("  Retrievers : "+info.getRetrievers());
58  	        }
59  	        if (info.getRenewers() != null) {
60  	            out.println("  Renewers : "+info.getRenewers());
61  	        }
62  	        if (info.getDescription() != null) {
63  	            out.println("  Description : "+info.getDescription());
64  	        }
65          }
66          // local info
67          out.println("  Delegated LifeTime : "+format(m_proxy.getRemainingLifetime()));
68      }
69  }