diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/PropertiesPanelUtils.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/PropertiesPanelUtils.java index e2904c3a8500eb03d7560860ae71a0b841cd15b0..03bac5fb9e7191b86c5e15e6d3c6d87f5d28e48e 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/PropertiesPanelUtils.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/PropertiesPanelUtils.java @@ -16,14 +16,18 @@ package ch.systemsx.cisd.openbis.plugin.generic.client.web.client.application; +import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Map; +import ch.systemsx.cisd.common.shared.basic.string.StringUtils; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict; import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; import ch.systemsx.cisd.openbis.generic.client.web.client.application.renderer.PropertyTypeRenderer; import ch.systemsx.cisd.openbis.generic.client.web.client.application.util.EntityPropertyUtils; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Metaproject; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.PropertyType; /** @@ -49,4 +53,22 @@ public class PropertiesPanelUtils } } } + + public static void addMetaprojects(final IViewContext<?> viewContext, + final Map<String, Object> properties, final Collection<Metaproject> metaprojects) + { + if (metaprojects != null && metaprojects.size() > 0) + { + String[] names = new String[metaprojects.size()]; + int index = 0; + + for (Metaproject metaproject : metaprojects) + { + names[index++] = metaproject.getName(); + } + properties + .put(viewContext.getMessage(Dict.METAPROJECTS), StringUtils.join(names, ", ")); + } + + } } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/dataset/DataSetPropertiesPanel.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/dataset/DataSetPropertiesPanel.java index 8942d729b5f1c0e20c093368566fda872aa11921..74dad561e33a69b1620c4f8e7b14dd3d0a9cfe6e 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/dataset/DataSetPropertiesPanel.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/dataset/DataSetPropertiesPanel.java @@ -147,7 +147,10 @@ public class DataSetPropertiesPanel extends ContentPanel { properties.put(messageProvider.getMessage(Dict.DELETION), deletion); } + + PropertiesPanelUtils.addMetaprojects(viewContext, properties, dataset.getMetaprojects()); PropertiesPanelUtils.addEntityProperties(viewContext, properties, dataset.getProperties()); + return properties; } } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentPropertiesPanel.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentPropertiesPanel.java index 699739a40fb837bae6fe48582cd1deea7f640be8..feb6922b1439d938b34b6b786379422b246ea93e 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentPropertiesPanel.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentPropertiesPanel.java @@ -122,6 +122,7 @@ public class ExperimentPropertiesPanel extends ContentPanel } properties.put(viewContext.getMessage(Dict.PROJECT), experiment.getProject()); + PropertiesPanelUtils.addMetaprojects(viewContext, properties, experiment.getMetaprojects()); PropertiesPanelUtils.addEntityProperties(viewContext, properties, experiment.getProperties()); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialViewer.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialViewer.java index 1ae06c3b8e8d517b41a928d8c3375d6bc504a765..a9a228e49e927f74db5716bf34e4443d4705dfbc 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialViewer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialViewer.java @@ -194,6 +194,7 @@ abstract public class GenericMaterialViewer extends AbstractViewerWithVerticalSp properties.put(viewContext.getMessage(Dict.REGISTRATION_DATE), material.getRegistrationDate()); + PropertiesPanelUtils.addMetaprojects(viewContext, properties, material.getMetaprojects()); PropertiesPanelUtils.addEntityProperties(viewContext, properties, material.getProperties()); return properties; diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/sample/GenericSampleViewer.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/sample/GenericSampleViewer.java index 978b1fc4685ba1e606beea6fa3bf1d29acdfb093..eda845cfa10ef16dc0b4ae536f2ebc4c6846afa3 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/sample/GenericSampleViewer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/sample/GenericSampleViewer.java @@ -312,6 +312,8 @@ abstract public class GenericSampleViewer extends AbstractViewerWithVerticalSpli { properties.put(viewContext.getMessage(Dict.PART_OF), partOf); } + + PropertiesPanelUtils.addMetaprojects(viewContext, properties, sample.getMetaprojects()); PropertiesPanelUtils.addEntityProperties(viewContext, properties, sample.getProperties()); return properties;