diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/IRelationshipTypeDAO.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/IRelationshipTypeDAO.java index df2b38365efcdaa98943bf99a4737ea1f7902efe..3269ee56b6ef77277e7c07243238a137471120af 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/IRelationshipTypeDAO.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/IRelationshipTypeDAO.java @@ -29,4 +29,6 @@ public interface IRelationshipTypeDAO extends IGenericDAO<RelationshipTypePE> */ public RelationshipTypePE tryFindRelationshipTypeByCode(String code); + public Long getRelationshipTypeId(String code); + } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/RelationshipTypeDAO.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/RelationshipTypeDAO.java index 86ff093d4cbb28ab15ac5ea21874dc3e8e4b1b05..65b32059c12c1787d672a125db4f95ea1fa1389b 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/RelationshipTypeDAO.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/RelationshipTypeDAO.java @@ -69,7 +69,7 @@ public class RelationshipTypeDAO extends AbstractGenericEntityDAO<RelationshipTy return type; } - private synchronized Long getRelationshipTypeId(String code) + public synchronized Long getRelationshipTypeId(String code) { if (relationshipTypeIdsMap == null) { diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SampleRelationshipDAO.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SampleRelationshipDAO.java index 58803d51c768200e1f7638f14a7f73682aae0c31..2f9df6bf8b9e6b41b0d3264f221ace46a17b526b 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SampleRelationshipDAO.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SampleRelationshipDAO.java @@ -36,17 +36,17 @@ public class SampleRelationshipDAO extends AbstractGenericEntityDAO<SampleRelati } public List<SampleRelationshipPE> listSampleParents(List<Long> childrenTechIds) { - RelationshipTypePE relationshipType = relationshipTypeDAO.tryFindRelationshipTypeByCode(BasicConstant.PARENT_CHILD_INTERNAL_RELATIONSHIP); + Long typeId = relationshipTypeDAO.getRelationshipTypeId(BasicConstant.PARENT_CHILD_INTERNAL_RELATIONSHIP); final DetachedCriteria criteria = DetachedCriteria.forClass(SampleRelationshipPE.class); - criteria.add(Restrictions.eq("relationship.id", relationshipType.getId())); + criteria.add(Restrictions.eq("relationship.id", typeId)); criteria.add(Restrictions.in("childSample.id", childrenTechIds)); return cast(getHibernateTemplate().findByCriteria(criteria)); } public List<SampleRelationshipPE> listSampleChildren(List<Long> parentTechIds) { - RelationshipTypePE relationshipType = relationshipTypeDAO.tryFindRelationshipTypeByCode(BasicConstant.PARENT_CHILD_INTERNAL_RELATIONSHIP); + Long typeId = relationshipTypeDAO.getRelationshipTypeId(BasicConstant.PARENT_CHILD_INTERNAL_RELATIONSHIP); final DetachedCriteria criteria = DetachedCriteria.forClass(SampleRelationshipPE.class); - criteria.add(Restrictions.eq("relationship.id", relationshipType.getId())); + criteria.add(Restrictions.eq("relationship.id", typeId)); criteria.add(Restrictions.in("parentSample.id", parentTechIds)); return cast(getHibernateTemplate().findByCriteria(criteria)); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/SamplePE.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/SamplePE.java index 13d3991caec2a158317828f0301bfcf1219c48a9..5e8a2400139581dec0ae19820dbd0545888f5ad5 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/SamplePE.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/SamplePE.java @@ -43,9 +43,10 @@ import javax.persistence.Version; import javax.validation.constraints.NotNull; import javax.validation.constraints.Pattern; -import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.relationship.IGetRelationshipIdExecutor; import ch.systemsx.cisd.openbis.generic.server.CommonServiceProvider; -import ch.systemsx.cisd.openbis.generic.shared.basic.*; +import ch.systemsx.cisd.openbis.generic.shared.basic.BasicConstant; +import ch.systemsx.cisd.openbis.generic.shared.basic.IIdHolder; +import ch.systemsx.cisd.openbis.generic.shared.basic.IIdentityHolder; import org.apache.commons.lang3.builder.EqualsBuilder; import org.apache.commons.lang3.builder.HashCodeBuilder; import org.apache.commons.lang3.builder.ToStringBuilder;