/**
  * Returns {@code true} if the other object is an instance of {@code AccessedObjectImpl} and has
  * the same object Id, access type and source.
  */
 public boolean equals(Object o) {
   if ((o != null) && (o instanceof AccessedObjectImpl)) {
     AccessedObjectImpl a = (AccessedObjectImpl) o;
     return objId.equals(a.objId) && type.equals(a.type) && source.equals(a.source);
   }
   return false;
 }
 /**
  * Returns the hash code of the object Id xor'd with the hash code of the access type and the
  * hash code of the source.
  */
 public int hashCode() {
   return objId.hashCode() ^ type.hashCode() ^ source.hashCode();
 }