1 package org.csc.phynixx.watchdog.objectref;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 public class ObjectReference<T> implements IObjectReference<T> {
29
30 private T objectRef = null;
31
32
33 public ObjectReference(T objectRef) {
34 super();
35 this.objectRef = objectRef;
36 }
37
38
39 public String getObjectDescription() {
40
41 return objectRef == null ? "NULL" : objectRef.toString();
42 }
43
44
45 public boolean isWeakReference() {
46 return false;
47 }
48
49
50 public T get() {
51 return objectRef;
52 }
53
54 public boolean equals(Object obj) {
55 T objRef = this.get();
56 if (objRef == null) {
57 return obj == null;
58 }
59 return objRef.equals(obj);
60 }
61
62 public int hashCode() {
63 Object objRef = this.get();
64 if (objRef == null) {
65 return "".hashCode();
66 }
67 return objRef.hashCode();
68 }
69
70 public String toString() {
71 Object objRef = this.get();
72 if (objRef == null) {
73 return "";
74 }
75 return objRef.toString();
76 }
77
78
79 public boolean isStale() {
80 return false;
81 }
82
83 }