00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 
00029 
00030  
00031 package org.objectweb.proactive.ext.security.securityentity;
00032 
00033 import java.io.Serializable;
00034 import java.security.cert.X509Certificate;
00035 
00036 
00043 public class EntityVirtualNode extends Entity implements Serializable {
00044     protected String virtualNodeName;
00045 
00046     public EntityVirtualNode() {
00047     }
00048 
00057     public EntityVirtualNode(String name, X509Certificate application,
00058         X509Certificate certificate) {
00059         super();
00060         virtualNodeName = name;
00061         if (application == null) {
00062             System.out.println("APPPLICATION CERTIFICATE IS NULLL");
00063             throw new RuntimeException();
00064         }
00065         if (name == null) {
00066             System.out.println("APPPLICATION Virtual Node IS NULLL");
00067             throw new RuntimeException();
00068         }
00069 
00070         
00071         
00072         this.applicationCertificate = application;
00073         
00074     }
00075 
00076     
00077     
00078     
00079     
00080     public String getName() {
00081         return virtualNodeName;
00082     }
00083 
00084     public String toString() {
00085         String s = null;
00086         s = virtualNodeName;
00087         s += (applicationCertificate.getSubjectDN().getName() + " |||| ");
00088         
00089         return s;
00090     }
00091 
00092     public boolean equals(Entity e) {
00093         if (e instanceof EntityVirtualNode) {
00094             if (applicationCertificate == null) {
00095                 logger.debug("applicationCErtificate null");
00096                 return false;
00097             }
00098 
00099             
00100             if (((EntityVirtualNode) e).getApplicationCertificate() == null) {
00101                 logger.debug("distant applicationCErtificate null");
00102                 return false;
00103             }
00104 
00105             
00106             return this.virtualNodeName.equals(((EntityVirtualNode) e).virtualNodeName) &&
00107             e.getApplicationCertificate().equals(applicationCertificate);
00108         }
00109         return false;
00110     }
00111 }