public boolean equals(Object o) { try { ResourceImpl other = (ResourceImpl) o; return symbolicName.equals(other.symbolicName) && version.equals(other.version); } catch (ClassCastException e) { return false; } }