00001 package gov.nasa.arc.ase.jpf.jvm;
00002
00003 import gov.nasa.arc.ase.util.HashData;
00004 import gov.nasa.arc.ase.util.PoolObject;
00005 import java.io.*;
00006
00007 public class ObjectInfo extends PoolObject {
00008 Monitor mo;
00009
00010
00011
00012
00013
00014 public ObjectInfo() {
00015 mo = new Monitor();
00016 }
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 public ObjectInfo(Monitor m) {
00032 mo = m;
00033 }
00034
00035
00036 public Object clone() {
00037 try{
00038
00039 ObjectInfo oi = (ObjectInfo)super.clone();
00040
00041
00042
00043
00044
00045 oi.mo = (Monitor)mo.clone();
00046
00047
00048 return oi;
00049 } catch(CloneNotSupportedException e) {
00050 throw new InternalError(e.toString());
00051 }
00052 }
00053 public boolean equals(Object obj){
00054 ObjectInfo oi = (ObjectInfo)obj;
00055
00056
00057
00058
00059 return mo.equals(oi.mo);
00060
00061 }
00062
00063 public Monitor getMonitor() {
00064 return mo;
00065 }
00066 public void hash(HashData hd) {
00067 mo.hash(hd);
00068 }
00069
00070
00071 public int hashCode() {
00072 return mo.hashCode();
00073 }
00074 }