From c2ad31bb65883dcb0ee328edf67923cbcd6a39a3 Mon Sep 17 00:00:00 2001 From: alaskowski <alaskowski@ethz.ch> Date: Fri, 2 Jun 2023 10:46:22 +0200 Subject: [PATCH] SSDM-13637: Changed generators to include metadata in Sample and SampleType --- .../v3/helper/generators/AbstractGenerator.java | 14 ++++++++++---- .../asapi/v3/helper/generators/DtoGenerator.java | 7 +++++++ .../asapi/v3/helper/generators/Generator.java | 2 ++ 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/AbstractGenerator.java b/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/AbstractGenerator.java index ba44d76975a..82e63079ccd 100644 --- a/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/AbstractGenerator.java +++ b/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/AbstractGenerator.java @@ -120,6 +120,12 @@ public class AbstractGenerator gen.addClassForImport(Set.class); } + public static void addMetaData(DtoGenerator gen) + { + gen.addSimpleField("Map<String, String>", "MetaData", Map.class.getName(), "metaData"); + gen.addClassForImport(Map.class); + } + public static void addProperties(DtoGenerator gen) { gen.addPluralFetchedField("Map<String, String>", Map.class.getName(), "properties", @@ -251,21 +257,21 @@ public class AbstractGenerator gen.addAdditionalMethod("@Override\n" + " public void setControlledVocabularyProperty(String propertyName, String propertyValue)\n" + " {\n" - + " setProperty(propertyName, value);\n" + + " setProperty(propertyName, propertyValue);\n" + " }"); // Sample gen.addAdditionalMethod("@Override\n" - + " public String getSampleProperty(String propertyName)\n" + + " public SamplePermId getSampleProperty(String propertyName)\n" + " {\n" + " String propertyValue = getProperty(propertyName);\n" - + " return (propertyValue == null || propertyValue.isBlank()) ? null : new SamplePermId(propertyValue)\n" + + " return (propertyValue == null || propertyValue.isBlank()) ? null : new SamplePermId(propertyValue);\n" + " }"); gen.addAdditionalMethod("@Override\n" + " public void setSampleProperty(String propertyName, SamplePermId propertyValue)\n" + " {\n" - + " setProperty(propertyName, propertyValue == null ? null : propertyValue.getPermId())\n" + + " setProperty(propertyName, propertyValue == null ? null : propertyValue.getPermId());\n" + " }"); // Hyperlink diff --git a/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/DtoGenerator.java b/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/DtoGenerator.java index 829583087ee..e9b9cb0c27d 100644 --- a/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/DtoGenerator.java +++ b/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/DtoGenerator.java @@ -245,6 +245,13 @@ public class DtoGenerator fields.add(dtoField); } + public void addSimpleField(String definitionClassName, String name, String fullClassName, String persistentFieldName) + { + DTOField dtoField = createPlural(name, definitionClassName, fullClassName, null, null); + dtoField.persistentFieldName = persistentFieldName; + fields.add(dtoField); + } + public DTOField addFetchedField(Class<?> c, String name, String description, Class<?> fetchOptionsClass) { diff --git a/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/Generator.java b/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/Generator.java index 14d59dc241b..1dadf4b81bd 100644 --- a/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/Generator.java +++ b/server-application-server/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/generators/Generator.java @@ -234,6 +234,7 @@ public class Generator extends AbstractGenerator addRegistrator(gen); addModifier(gen); addAttachments(gen); + addMetaData(gen); gen.setToStringMethod("\"Sample \" + permId"); @@ -265,6 +266,7 @@ public class Generator extends AbstractGenerator gen.addStringField("generatedCodePrefix"); addModificationDate(gen); + addMetaData(gen); gen.setToStringMethod("\"SampleType \" + code"); addPropertyAssignments(gen); -- GitLab