From dfdc3b03fc4ec1d8e6f00be0182d26e030edb878 Mon Sep 17 00:00:00 2001 From: felmer <felmer> Date: Tue, 14 Dec 2010 08:10:03 +0000 Subject: [PATCH] LMS-1783 bug fixed: correct column name of properties SVN: 19114 --- .../shared/util/TypedTableModelBuilder.java | 5 ++++- .../util/TypedTableModelBuilderTest.java | 20 +++++++++++-------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/util/TypedTableModelBuilder.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/util/TypedTableModelBuilder.java index 54d7a47eb8c..3ad1eb5922c 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/util/TypedTableModelBuilder.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/util/TypedTableModelBuilder.java @@ -134,7 +134,10 @@ public class TypedTableModelBuilder<T extends ISerializable> { PropertyType propertyType = property.getPropertyType(); String label = propertyType.getLabel(); - String code = idPrefix + propertyType.getCode(); + boolean internalNamespace = propertyType.isInternalNamespace(); + String code = + idPrefix + (internalNamespace ? "INTERN" : "USER") + "-" + + propertyType.getSimpleCode(); IColumn column = column(code).withTitle(label); DataTypeCode dataType = propertyType.getDataType().getCode(); ISerializableComparable value; diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/shared/util/TypedTableModelBuilderTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/shared/util/TypedTableModelBuilderTest.java index 20767058fe7..ec7d5de2ce7 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/shared/util/TypedTableModelBuilderTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/shared/util/TypedTableModelBuilderTest.java @@ -109,18 +109,19 @@ public class TypedTableModelBuilderTest extends AssertJUnit { TypedTableModelBuilder<ISerializable> builder = new TypedTableModelBuilder<ISerializable>(); builder.addRow(new MockSerializable()); - IEntityProperty p1 = property("beta", "3.25", DataTypeCode.REAL); - IEntityProperty p2 = property("alpha", "hello\nworld", DataTypeCode.MULTILINE_VARCHAR); - IEntityProperty p3 = property("gamma", "hello", DataTypeCode.VARCHAR); + IEntityProperty p1 = property("beta", "3.25", true, DataTypeCode.REAL); + IEntityProperty p2 = property("alpha", "hello\nworld", false, DataTypeCode.MULTILINE_VARCHAR); + IEntityProperty p3 = property("gamma", "hello", false, DataTypeCode.VARCHAR); builder.columnGroup("g").addProperties("MY-", Arrays.asList(p1, p2, p3)); builder.addRow(new MockSerializable()); - IEntityProperty p4 = property("gamma", "hi", DataTypeCode.VARCHAR); - IEntityProperty p5 = property("kappa", "42", DataTypeCode.INTEGER); + IEntityProperty p4 = property("gamma", "hi", false, DataTypeCode.VARCHAR); + IEntityProperty p5 = property("kappa", "42", false, DataTypeCode.INTEGER); builder.columnGroup("g").addProperties("MY-", Arrays.asList(p4, p5)); TypedTableModel<ISerializable> model = builder.getModel(); List<TableModelColumnHeader> headers = model.getHeader(); - assertHeadersOrder(headers, "MY-ALPHA", "MY-BETA", "MY-GAMMA", "MY-KAPPA"); + System.out.println("HEADERS:"+headers); + assertHeadersOrder(headers, "MY-USER-ALPHA", "MY-INTERN-BETA", "MY-USER-GAMMA", "MY-USER-KAPPA"); assertEquals("alpha", headers.get(0).getTitle()); assertEquals(DataTypeCode.MULTILINE_VARCHAR, headers.get(0).getDataType()); assertEquals("beta", headers.get(1).getTitle()); @@ -142,11 +143,14 @@ public class TypedTableModelBuilderTest extends AssertJUnit assertEquals(2, rows.size()); } - private IEntityProperty property(String key, String value, DataTypeCode type) + private IEntityProperty property(String key, String value, boolean internalNamespace, DataTypeCode type) { EntityProperty property = new EntityProperty(); PropertyType propertyType = new PropertyType(); - propertyType.setCode(key.toUpperCase()); + String normalizedKey = key.toUpperCase(); + propertyType.setSimpleCode(normalizedKey); + propertyType.setInternalNamespace(internalNamespace); + propertyType.setCode((internalNamespace ? "$" : "") + normalizedKey); propertyType.setLabel(key); propertyType.setDataType(new DataType(type)); property.setPropertyType(propertyType); -- GitLab