00001 package gov.nasa.arc.ase.jpf.jvm.runtime;
00002
00003 import java.util.*;
00004 import gov.nasa.arc.ase.jpf.*;
00005 import gov.nasa.arc.ase.jpf.jvm.*;
00006 import gov.nasa.arc.ase.util.Debug;
00007 import gov.nasa.arc.ase.util.PoolObject;
00008
00009 public class Lock extends PoolObject {
00010
00011 private Ref ref;
00012 private String className;
00013
00014
00015 public Lock(Ref ref,String className){
00016 this.ref = ref;
00017 this.className = className;
00018 }
00019 public boolean equals(Object lock){
00020 return ref.equals(((Lock)lock).getRef());
00021 }
00022 public String getClassName(){
00023 return className;
00024 }
00025 public Ref getRef(){
00026 return ref;
00027 }
00028 public int hashCode(){
00029 return ref.getReference();
00030 }
00031 public void print() {
00032 LockOrder.print(className + "[" + ref + "]");
00033 }
00034 }