diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java index 7cfa25ccdd50aa17bea5772e2c0d2d212e946752..59cc2eb2f0c4bf14ad343d81c6b34a517456ac60 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java @@ -358,9 +358,9 @@ public abstract class AbstractExternalDataGrid final String permId = dataset.getPermId(); final String dssBaseURL = dataset.getDataStore().getHostUrl(); final String typeCode = dataset.getDataSetType().getCode(); - final Set<String> typesWithImageOverview = - getWebClientConfiguration().getDataSetTypesWithImageOverview(); - if (typesWithImageOverview.contains(typeCode)) + final Set<String> typePatternsWithImageOverview = + getWebClientConfiguration().getDataSetTypePatternsWithImageOverview(); + if (matches(typePatternsWithImageOverview, typeCode)) { return DatasetImageOverviewUtilities.createEmbededImageHtml(dssBaseURL, permId, typeCode, sessionID); @@ -373,6 +373,18 @@ public abstract class AbstractExternalDataGrid } + private static boolean matches(Set<String> patternsSet, String value) + { + for (String pattern : patternsSet) + { + if (value.matches(pattern)) + { + return true; + } + } + return false; + } + private EntityGridModelFactory<ExternalData> getColumnsFactory() { return new EntityGridModelFactory<ExternalData>(viewContext, getStaticColumnsDefinition()); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/WebClientConfiguration.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/WebClientConfiguration.java index 74698cc72f9c2954680696310b69ccc9e06d7d6c..babf0cc0dcae4e08ebca84ceda32efb6b73c34c1 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/WebClientConfiguration.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/WebClientConfiguration.java @@ -39,7 +39,7 @@ public class WebClientConfiguration implements ISerializable private Map<String, Map<String, String>> technologyProperties = new HashMap<String, Map<String, String>>(); - private Set<String> dataSetTypesWithImageOverview = new HashSet<String>(); + private Set<String> dataSetTypePatternsWithImageOverview = new HashSet<String>(); private ViewMode defaultViewMode; @@ -76,14 +76,14 @@ public class WebClientConfiguration implements ISerializable this.defaultViewMode = defaultViewMode; } - public Set<String> getDataSetTypesWithImageOverview() + public Set<String> getDataSetTypePatternsWithImageOverview() { - return dataSetTypesWithImageOverview; + return dataSetTypePatternsWithImageOverview; } public void setDataSetTypesWithImageOverview(Set<String> dataSetTypesWithImageOverview) { - this.dataSetTypesWithImageOverview = dataSetTypesWithImageOverview; + this.dataSetTypePatternsWithImageOverview = dataSetTypesWithImageOverview; } public int getMaxVisibleColumns()