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 ba44d76975a94a6204575a84f7297fca82c6e60b..82e63079ccd850ef395b1388253faa225436cfd6 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 829583087ee6a204abb10180051544414830064a..e9b9cb0c27d44b760190afa2953818785381e6f1 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 14d59dc241b8f7c6c7687ace8e9936f45791be2f..1dadf4b81bd614d52e95a3f35194fe22e741489b 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);