diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/EntityValidationInterceptor.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/EntityValidationInterceptor.java index 65ecc779d7952d6661c30519024cd74d283f5542..4acc98bc8d282c820fdbabbf4479070950150602 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/EntityValidationInterceptor.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/EntityValidationInterceptor.java @@ -489,7 +489,7 @@ public class EntityValidationInterceptor extends EmptyInterceptor implements @Override public int hashCode() { - return code.hashCode() + kind.hashCode(); + return (id == null ? code.hashCode() : id.intValue()) + 37 * kind.hashCode(); } @Override @@ -498,7 +498,7 @@ public class EntityValidationInterceptor extends EmptyInterceptor implements if (o instanceof EntityIdentifier) { EntityIdentifier e = (EntityIdentifier) o; - return (e.code.equals(code)) && e.kind.equals(kind); + return (e.id != null ? e.id.equals(id) : id == null && e.code.equals(code)) && e.kind.equals(kind); } else { throw new IllegalArgumentException(o.toString());