00001 package gov.nasa.arc.ase.jpf.jvm; 00002 00003 import gov.nasa.arc.ase.jpf.Engine; 00004 import gov.nasa.arc.ase.jpf.Path; 00005 import gov.nasa.arc.ase.util.Debug; 00006 import java.io.Serializable; 00007 00008 public class JVMPathEntry implements Serializable { 00009 public int line; 00010 public String classname; 00011 public String file; 00012 public int thread; 00013 public int random; 00014 00015 public JVMPathEntry(int l, String cname, int t, int r) { 00016 line = l; 00017 classname = cname; 00018 if(cname == null) { 00019 file = "<unknown>"; 00020 classname = "<unknown>"; 00021 } else { 00022 file = Source.locateSourceFile(ClassInfo.getClassInfo(cname).getSourceFileName()); 00023 if(file == null) file = cname; 00024 } 00025 thread = t; 00026 random = r; 00027 } 00028 public boolean equals(Object o) { 00029 if(o == null) return false; 00030 if(!(o instanceof JVMPathEntry)) return false; 00031 00032 JVMPathEntry e = (JVMPathEntry)o; 00033 00034 return thread == e.thread && random == e.random && line == e.line && 00035 classname.equals(e.classname) && file.equals(e.file); 00036 } 00037 }