From 43a33df19a8b6a46ab2799b3b59a3597e26839b2 Mon Sep 17 00:00:00 2001 From: buczekp <buczekp> Date: Fri, 25 Sep 2009 07:37:52 +0000 Subject: [PATCH] [LMS-1123] fixed sample identifier of samples with container in sample browsers SVN: 12703 --- .../bo/samplelister/SampleListingWorker.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/samplelister/SampleListingWorker.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/samplelister/SampleListingWorker.java index fbd01b48441..4c2e7226661 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/samplelister/SampleListingWorker.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/samplelister/SampleListingWorker.java @@ -326,7 +326,6 @@ final class SampleListingWorker sampleTypes.put(type.getId(), type); if (singleSampleTypeMode == false) { - // TODO 2009-09-24, Piotr Buczek: use to display all parents maxSampleContainerResolutionDepth = Math.max(maxSampleContainerResolutionDepth, type .getContainerHierarchyDepth()); @@ -629,6 +628,24 @@ final class SampleListingWorker record.sample.setContainer(container); record.sample.setCode(IdentifierHelper.convertCode(record.sample.getSubCode(), container.getCode())); + updateSampleIdentifier(record.sample); } } + + private void updateSampleIdentifier(Sample sample) + { + SampleIdentifier identifier; + if (sample.getDatabaseInstance() != null) + { + final DatabaseInstanceIdentifier dbId = + new DatabaseInstanceIdentifier(databaseInstance.getCode()); + identifier = new SampleIdentifier(dbId, sample.getCode()); + } else + { + final GroupIdentifier groupId = + new GroupIdentifier(databaseInstance.getCode(), sample.getGroup().getCode()); + identifier = new SampleIdentifier(groupId, sample.getCode()); + } + sample.setIdentifier(identifier.toString()); + } } -- GitLab