Update compatibility to the latest file transformer base
This commit is contained in:
parent
6af47452e9
commit
30610810da
|
@ -18,7 +18,7 @@
|
|||
<maven.compiler.target>21</maven.compiler.target>
|
||||
<maven.compiler.release>21</maven.compiler.release>
|
||||
<revision>1.0.0-SNAPSHOT</revision>
|
||||
<transformer-base.version>0.0.3</transformer-base.version>
|
||||
<transformer-base.version>1.0.0-SNAPSHOT</transformer-base.version>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonSubTypes;
|
||||
import eu.eudat.file.transformer.enums.FieldType;
|
||||
import eu.eudat.file.transformer.enums.FieldValidationType;
|
||||
import eu.eudat.file.transformer.models.descriptiontemplate.DescriptionTemplateXmlModel;
|
||||
import eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata.BaseFieldDataXmlModel;
|
||||
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||
import jakarta.xml.bind.annotation.XmlType;
|
||||
import eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata.*;
|
||||
import jakarta.xml.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@XmlType(namespace = "description-template")
|
||||
@XmlAccessorType(XmlAccessType.FIELD)
|
||||
public class FieldXmlModel {
|
||||
|
||||
private String id;
|
||||
|
@ -19,6 +21,37 @@ public class FieldXmlModel {
|
|||
private List<RuleXmlModel> visibilityRules;
|
||||
private List<FieldValidationType> validations;
|
||||
private Boolean includeInExport;
|
||||
|
||||
@XmlElements({
|
||||
@XmlElement(type = ExternalSelectDataXmlModel.class, name = FieldType.Names.ExternalSelect),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.BooleanDecision),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.InternalDmpDatasets),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.InternalDmpDmps),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.CheckBox),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.DatePicker),
|
||||
@XmlElement(type = ExternalDatasetDataFileTransformerModel.class, name = FieldType.Names.ExternalDatasets),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.FreeText),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.Licenses),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.Organizations),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.Publications),
|
||||
@XmlElement(type = RadioBoxDataFileTransformerModel.class, name = FieldType.Names.RadioBox),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.Registries),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.InternalDmpResearchers),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.Researchers),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.RichTextarea),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.Services),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.Tags),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.Taxonomies),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.TextArea),
|
||||
@XmlElement(type = UploadDataFileTransformerModel.class, name = FieldType.Names.Upload),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.Validation),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.DatasetIdentifier),
|
||||
@XmlElement(type = LabelDataFileTransformerModel.class, name = FieldType.Names.Currency),
|
||||
@XmlElement(type = SelectDataFileTransformerModel.class, name = FieldType.Names.Select),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.DataRepositories),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.JournalRepositories),
|
||||
@XmlElement(type = LabelAndMultiplicityDataFileTransformerModel.class, name = FieldType.Names.Publications),
|
||||
})
|
||||
private BaseFieldDataXmlModel data;
|
||||
|
||||
public String getId() {
|
||||
|
|
|
@ -1,24 +0,0 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
import eu.eudat.file.transformer.enums.FieldType;
|
||||
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@XmlRootElement(name = FieldType.Names.Autocomplete)
|
||||
public class AutoCompleteDataXmlModel extends BaseFieldDataXmlModel {
|
||||
private Boolean multiAutoComplete;
|
||||
private List<AutoCompleteSingleDataXmlModel> autoCompleteSingleDataXmlModelList;
|
||||
|
||||
public Boolean getMultiAutoComplete() { return multiAutoComplete; }
|
||||
public void setMultiAutoComplete(Boolean multiAutoComplete) { this.multiAutoComplete = multiAutoComplete; }
|
||||
|
||||
public List<AutoCompleteSingleDataXmlModel> getAutoCompleteSingleDataList() {
|
||||
return autoCompleteSingleDataXmlModelList;
|
||||
}
|
||||
|
||||
public void setAutoCompleteSingleDataList(List<AutoCompleteSingleDataXmlModel> autoCompleteSingleDataXmlModelList) {
|
||||
this.autoCompleteSingleDataXmlModelList = autoCompleteSingleDataXmlModelList;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
public class AutoCompleteSingleDataXmlModel {
|
||||
|
||||
private String url;
|
||||
private ComboBoxOptionXmlModel autoCompleteOptions;
|
||||
|
||||
|
||||
public String getUrl() {
|
||||
return url;
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public ComboBoxOptionXmlModel getAutoCompleteOptions() {
|
||||
return autoCompleteOptions;
|
||||
}
|
||||
|
||||
public void setAutoCompleteOptions(ComboBoxOptionXmlModel autoCompleteOptions) {
|
||||
this.autoCompleteOptions = autoCompleteOptions;
|
||||
}
|
||||
}
|
|
@ -6,49 +6,6 @@ import eu.eudat.file.transformer.enums.FieldType;
|
|||
import jakarta.xml.bind.annotation.XmlSeeAlso;
|
||||
import jakarta.xml.bind.annotation.XmlTransient;
|
||||
|
||||
@XmlTransient
|
||||
@XmlSeeAlso({AutoCompleteDataXmlModel.class,
|
||||
LabelAndMultiplicityFieldDataXmlModel.class,
|
||||
LabelFieldDataXmlModel.class,
|
||||
ExternalDatasetDataXmlModel.class,
|
||||
RadioBoxDataXmlModel.class,
|
||||
UploadDataXmlModel.class,
|
||||
WordListDataXmlModel.class})
|
||||
/*@JsonTypeInfo(
|
||||
use = JsonTypeInfo.Id.NAME,
|
||||
include = JsonTypeInfo.As.PROPERTY,
|
||||
property = "fieldType",
|
||||
visible = true)
|
||||
@JsonSubTypes({
|
||||
@JsonSubTypes.Type(value = AutoCompleteDataXmlModel.class, name = FieldType.Names.Autocomplete),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.BooleanDecision),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.InternalDmpDatasets),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.InternalDmpDmps),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.CheckBox),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.DatePicker),
|
||||
@JsonSubTypes.Type(value = ExternalDatasetDataXmlModel.class, name = FieldType.Names.ExternalDatasets),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.FreeText),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.Licenses),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.Organizations),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.Publications),
|
||||
@JsonSubTypes.Type(value = RadioBoxDataXmlModel.class, name = FieldType.Names.RadioBox),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.Registries),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.InternalDmpResearchers),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.Researchers),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.RichTextarea),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.Services),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.Tags),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.Taxonomies),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.TextArea),
|
||||
@JsonSubTypes.Type(value = UploadDataXmlModel.class, name = FieldType.Names.Upload),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.Validation),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.DatasetIdentifier),
|
||||
@JsonSubTypes.Type(value = LabelFieldDataXmlModel.class, name = FieldType.Names.Currency),
|
||||
@JsonSubTypes.Type(value = WordListDataXmlModel.class, name = FieldType.Names.Wordlist),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.DataRepositories),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.JournalRepositories),
|
||||
@JsonSubTypes.Type(value = LabelAndMultiplicityFieldDataXmlModel.class, name = FieldType.Names.Publications),
|
||||
})*/
|
||||
public abstract class BaseFieldDataXmlModel {
|
||||
|
||||
private String label;
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
public class ComboBoxOptionXmlModel {
|
||||
private String label;
|
||||
private String value;
|
||||
private String source;
|
||||
private String uri;
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getSource() {
|
||||
return source;
|
||||
}
|
||||
|
||||
public void setSource(String source) {
|
||||
this.source = source;
|
||||
}
|
||||
|
||||
public String getUri() {
|
||||
return uri;
|
||||
}
|
||||
|
||||
public void setUri(String uri) {
|
||||
this.uri = uri;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -6,7 +6,7 @@ import eu.eudat.file.transformer.enums.FieldType;
|
|||
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement(name = FieldType.Names.ExternalDatasets)
|
||||
public class ExternalDatasetDataXmlModel extends LabelAndMultiplicityFieldDataXmlModel {
|
||||
public class ExternalDatasetDataXmlModel extends LabelAndMultiplicityDataXmlModel {
|
||||
private FieldDataExternalDatasetType type;
|
||||
|
||||
public FieldDataExternalDatasetType getType() {
|
||||
|
|
|
@ -0,0 +1,151 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
import eu.eudat.file.transformer.enums.FieldType;
|
||||
import jakarta.xml.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@XmlRootElement(name = FieldType.Names.ExternalSelect)
|
||||
public class ExternalSelectDataXmlModel extends LabelAndMultiplicityDataXmlModel {
|
||||
public static class ExternalSelectAuthDataXmlModel {
|
||||
private String url;
|
||||
private String method;
|
||||
private String body;
|
||||
private String path;
|
||||
private String type;
|
||||
|
||||
public String getUrl() {
|
||||
return url;
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public String getMethod() {
|
||||
return method;
|
||||
}
|
||||
|
||||
public void setMethod(String method) {
|
||||
this.method = method;
|
||||
}
|
||||
|
||||
public String getBody() {
|
||||
return body;
|
||||
}
|
||||
|
||||
public void setBody(String body) {
|
||||
this.body = body;
|
||||
}
|
||||
|
||||
public String getPath() {
|
||||
return path;
|
||||
}
|
||||
|
||||
public void setPath(String path) {
|
||||
this.path = path;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
}
|
||||
|
||||
public static class ExternalSelectSourceBindingXmlModel {
|
||||
private String label;
|
||||
private String value;
|
||||
private String source;
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getSource() {
|
||||
return source;
|
||||
}
|
||||
public void setSource(String source) {
|
||||
this.source = source;
|
||||
}
|
||||
}
|
||||
|
||||
public static class ExternalSelectSourceXmlModel {
|
||||
private String url;
|
||||
private String method;
|
||||
private String optionsRoot;
|
||||
private ExternalSelectSourceBindingXmlModel sourceBinding;
|
||||
private Boolean hasAuth;
|
||||
private ExternalSelectAuthDataXmlModel auth;
|
||||
|
||||
public String getOptionsRoot() {
|
||||
return optionsRoot;
|
||||
}
|
||||
public void setOptionsRoot(String optionsRoot) {
|
||||
this.optionsRoot = optionsRoot;
|
||||
}
|
||||
|
||||
public String getUrl() {
|
||||
return url;
|
||||
}
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public Boolean getHasAuth() {
|
||||
return hasAuth;
|
||||
}
|
||||
|
||||
public void setHasAuth(Boolean hasAuth) {
|
||||
this.hasAuth = hasAuth;
|
||||
}
|
||||
|
||||
public ExternalSelectAuthDataXmlModel getAuth() {
|
||||
return auth;
|
||||
}
|
||||
|
||||
public void setAuth(ExternalSelectAuthDataXmlModel auth) {
|
||||
this.auth = auth;
|
||||
}
|
||||
|
||||
public ExternalSelectSourceBindingXmlModel getSourceBinding() {
|
||||
return sourceBinding;
|
||||
}
|
||||
public void setSourceBinding(ExternalSelectSourceBindingXmlModel sourceBinding) {
|
||||
this.sourceBinding = sourceBinding;
|
||||
}
|
||||
|
||||
public String getMethod() {
|
||||
return method;
|
||||
}
|
||||
|
||||
public void setMethod(String method) {
|
||||
this.method = method;
|
||||
}
|
||||
}
|
||||
|
||||
private List<ExternalSelectSourceXmlModel> sources;
|
||||
|
||||
public List<ExternalSelectSourceXmlModel> getSources() {
|
||||
return sources;
|
||||
}
|
||||
|
||||
public void setSources(List<ExternalSelectSourceXmlModel> externalSelectSourceXmlModelList) {
|
||||
this.sources = externalSelectSourceXmlModelList;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
public class LabelAndMultiplicityDataXmlModel extends BaseFieldDataXmlModel {
|
||||
private Boolean multipleSelect;
|
||||
|
||||
public Boolean getMultipleSelect() {
|
||||
return multipleSelect;
|
||||
}
|
||||
|
||||
public void setMultipleSelect(Boolean multipleSelect) {
|
||||
this.multipleSelect = multipleSelect;
|
||||
}
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
import jakarta.xml.bind.annotation.XmlSeeAlso;
|
||||
import jakarta.xml.bind.annotation.XmlTransient;
|
||||
|
||||
@XmlSeeAlso({ExternalDatasetDataXmlModel.class})
|
||||
|
||||
public class LabelAndMultiplicityFieldDataXmlModel extends BaseFieldDataXmlModel {
|
||||
private Boolean multiAutoComplete;
|
||||
|
||||
public Boolean getMultiAutoComplete() {
|
||||
return multiAutoComplete;
|
||||
}
|
||||
|
||||
public void setMultiAutoComplete(Boolean multiAutoComplete) {
|
||||
this.multiAutoComplete = multiAutoComplete;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,4 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
public class LabelDataXmlModel extends BaseFieldDataXmlModel {
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
import eu.eudat.file.transformer.enums.FieldType;
|
||||
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement(name = "labelFieldData")
|
||||
public class LabelFieldDataXmlModel extends BaseFieldDataXmlModel {
|
||||
|
||||
}
|
|
@ -1,21 +1,39 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
|
||||
import eu.eudat.file.transformer.enums.FieldType;
|
||||
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@XmlRootElement(name = FieldType.Names.RadioBox)
|
||||
public class RadioBoxDataXmlModel extends BaseFieldDataXmlModel {
|
||||
public static class RadioBoxDataOptionXmlModel {
|
||||
private String label;
|
||||
private String value;
|
||||
|
||||
private List<RadioBoxOptionXmlModel> options;
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public List<RadioBoxOptionXmlModel> getOptions() {
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
|
||||
private List<RadioBoxDataOptionXmlModel> options;
|
||||
|
||||
public List<RadioBoxDataOptionXmlModel> getOptions() {
|
||||
return options;
|
||||
}
|
||||
|
||||
public void setOptions(List<RadioBoxOptionXmlModel> options) {
|
||||
public void setOptions(List<RadioBoxDataOptionXmlModel> options) {
|
||||
this.options = options;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
public class RadioBoxOptionXmlModel {
|
||||
private String label;
|
||||
private String value;
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class SelectDataXmlModel extends LabelAndMultiplicityDataXmlModel {
|
||||
private List<OptionXmlModel> options;
|
||||
|
||||
public List<OptionXmlModel> getOptions() {
|
||||
return options;
|
||||
}
|
||||
|
||||
public void setOptions(List<OptionXmlModel> optionEntities) {
|
||||
this.options = optionEntities;
|
||||
}
|
||||
|
||||
public static class OptionXmlModel {
|
||||
private String label;
|
||||
private String value;
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
|
||||
import eu.eudat.file.transformer.enums.FieldType;
|
||||
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
|
@ -8,18 +7,40 @@ import java.util.List;
|
|||
|
||||
@XmlRootElement(name = FieldType.Names.Upload)
|
||||
public class UploadDataXmlModel extends BaseFieldDataXmlModel {
|
||||
private List<UploadOptionXmlModel> types;
|
||||
public static class UploadDataOptionXmlModel {
|
||||
private String label;
|
||||
private String value;
|
||||
|
||||
public List<UploadOptionXmlModel> getTypes() {
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
|
||||
private List<UploadDataOptionXmlModel> types;
|
||||
|
||||
private Integer maxFileSizeInMB;
|
||||
|
||||
|
||||
public List<UploadDataOptionXmlModel> getTypes() {
|
||||
return types;
|
||||
}
|
||||
|
||||
public void setTypes(List<UploadOptionXmlModel> types) {
|
||||
public void setTypes(List<UploadDataOptionXmlModel> types) {
|
||||
this.types = types;
|
||||
}
|
||||
|
||||
private Integer maxFileSizeInMB;
|
||||
|
||||
public Integer getMaxFileSizeInMB() {
|
||||
return maxFileSizeInMB;
|
||||
}
|
||||
|
@ -27,7 +48,4 @@ public class UploadDataXmlModel extends BaseFieldDataXmlModel {
|
|||
public void setMaxFileSizeInMB(Integer maxFileSizeInMB) {
|
||||
this.maxFileSizeInMB = maxFileSizeInMB;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
public class UploadOptionXmlModel {
|
||||
private String label;
|
||||
private String value;
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
|
@ -1,28 +0,0 @@
|
|||
package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
|
||||
|
||||
import eu.eudat.file.transformer.enums.FieldType;
|
||||
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@XmlRootElement(name = FieldType.Names.Wordlist)
|
||||
public class WordListDataXmlModel extends BaseFieldDataXmlModel {
|
||||
private List<ComboBoxOptionXmlModel> options;
|
||||
private Boolean multiList;
|
||||
|
||||
public List<ComboBoxOptionXmlModel> getOptions() {
|
||||
return options;
|
||||
}
|
||||
|
||||
public void setOptions(List<ComboBoxOptionXmlModel> options) {
|
||||
this.options = options;
|
||||
}
|
||||
|
||||
public Boolean getMultiList() {
|
||||
return multiList;
|
||||
}
|
||||
|
||||
public void setMultiList(Boolean multiList) {
|
||||
this.multiList = multiList;
|
||||
}
|
||||
}
|
|
@ -29,7 +29,9 @@ public class DmpBlueprintXmlMapper {
|
|||
xmlModel.setDescription(fileModel.getDescription());
|
||||
xmlModel.setHasTemplates(fileModel.getHasTemplates());
|
||||
xmlModel.setOrdinal(fileModel.getOrdinal());
|
||||
xmlModel.setFields(fileModel.getFields().stream().map(DmpBlueprintXmlMapper::toFieldXml).toList());
|
||||
if (fileModel.getFields() != null) {
|
||||
xmlModel.setFields(fileModel.getFields().stream().map(DmpBlueprintXmlMapper::toFieldXml).toList());
|
||||
}
|
||||
return xmlModel;
|
||||
}
|
||||
|
||||
|
|
|
@ -88,7 +88,9 @@ public class DescriptionTemplateXmlMapper {
|
|||
if (fileModel.getData() != null) {
|
||||
xmlModel.setData(toDataXml(fileModel.getData()));
|
||||
}
|
||||
xmlModel.setVisibilityRules(fileModel.getVisibilityRules().stream().map(DescriptionTemplateXmlMapper::toRuleXml).toList());
|
||||
if (fileModel.getVisibilityRules() != null) {
|
||||
xmlModel.setVisibilityRules(fileModel.getVisibilityRules().stream().map(DescriptionTemplateXmlMapper::toRuleXml).toList());
|
||||
}
|
||||
|
||||
return xmlModel;
|
||||
}
|
||||
|
@ -107,8 +109,8 @@ public class DescriptionTemplateXmlMapper {
|
|||
SERVICES,
|
||||
TAXONOMIES,
|
||||
DATA_REPOSITORIES,
|
||||
JOURNAL_REPOSITORIES -> new LabelAndMultiplicityFieldDataXmlModel();
|
||||
case AUTO_COMPLETE -> new AutoCompleteDataXmlModel();
|
||||
JOURNAL_REPOSITORIES -> new LabelAndMultiplicityDataXmlModel();
|
||||
case EXTERNAL_SELECT -> new ExternalSelectDataXmlModel();
|
||||
case CHECK_BOX,
|
||||
DATE_PICKER,
|
||||
FREE_TEXT,
|
||||
|
@ -117,9 +119,9 @@ public class DescriptionTemplateXmlMapper {
|
|||
TEXT_AREA,
|
||||
VALIDATION,
|
||||
DATASET_IDENTIFIER,
|
||||
CURRENCY -> new LabelFieldDataXmlModel();
|
||||
CURRENCY -> new LabelDataXmlModel();
|
||||
case UPLOAD -> new UploadDataXmlModel();
|
||||
case WORD_LIST -> new WordListDataXmlModel();
|
||||
case SELECT -> new SelectDataXmlModel();
|
||||
case RADIO_BOX -> new RadioBoxDataXmlModel();
|
||||
case EXTERNAL_DATASETS -> new ExternalDatasetDataXmlModel();
|
||||
default -> null;
|
||||
|
@ -130,23 +132,22 @@ public class DescriptionTemplateXmlMapper {
|
|||
xmlModel.setFieldType(fileModel.getFieldType());
|
||||
switch (xmlModel) {
|
||||
case ExternalDatasetDataXmlModel sm -> sm.setType(((ExternalDatasetDataFileTransformerModel)fileModel).getType());
|
||||
case LabelAndMultiplicityFieldDataXmlModel sm -> sm.setMultiAutoComplete(((LabelAndMultiplicityFieldDataFileTransformerModel)fileModel).getMultiAutoComplete());
|
||||
case AutoCompleteDataXmlModel sm -> {
|
||||
AutoCompleteDataFileTransformerModel fm = ((AutoCompleteDataFileTransformerModel) fileModel);
|
||||
sm.setMultiAutoComplete(fm.getMultiAutoComplete());
|
||||
sm.setAutoCompleteSingleDataList(fm.getAutoCompleteSingleDataList().stream().map(FieldDataXmlMapper::toAutocompleteXml).toList());
|
||||
|
||||
case ExternalSelectDataXmlModel sm -> {
|
||||
ExternalSelectDataFileTransformerModel fm = ((ExternalSelectDataFileTransformerModel) fileModel);
|
||||
sm.setMultipleSelect(fm.getMultipleSelect());
|
||||
sm.setSources(fm.getSources().stream().map(FieldDataXmlMapper::toAutocompleteXml).toList());
|
||||
}
|
||||
case SelectDataXmlModel sm -> {
|
||||
SelectDataFileTransformerModel fm = (SelectDataFileTransformerModel) fileModel;
|
||||
sm.setMultipleSelect(fm.getMultipleSelect());
|
||||
sm.setOptions(fm.getOptions().stream().map(FieldDataXmlMapper::toSelectOptionXml).toList());
|
||||
}
|
||||
case LabelAndMultiplicityDataXmlModel sm -> sm.setMultipleSelect(((LabelAndMultiplicityDataFileTransformerModel)fileModel).getMultipleSelect());
|
||||
case UploadDataXmlModel sm -> {
|
||||
UploadDataFileTransformerModel fm = ((UploadDataFileTransformerModel) fileModel);
|
||||
sm.setMaxFileSizeInMB(fm.getMaxFileSizeInMB());
|
||||
sm.setTypes(fm.getTypes().stream().map(FieldDataXmlMapper::toUploadXml).toList());
|
||||
}
|
||||
case WordListDataXmlModel sm -> {
|
||||
WordListDataFileTransformerModel fm = (WordListDataFileTransformerModel) fileModel;
|
||||
sm.setMultiList(fm.getMultiList());
|
||||
sm.setOptions(fm.getOptions().stream().map(FieldDataXmlMapper::toComboBoxXml).toList());
|
||||
}
|
||||
case RadioBoxDataXmlModel sm -> {
|
||||
RadioBoxDataFileTransformerModel fm = (RadioBoxDataFileTransformerModel) fileModel;
|
||||
sm.setOptions(fm.getOptions().stream().map(FieldDataXmlMapper::toRadioBoxXml).toList());
|
||||
|
|
|
@ -4,19 +4,34 @@ import eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata
|
|||
|
||||
public class FieldDataXmlMapper {
|
||||
|
||||
public static AutoCompleteSingleDataXmlModel toAutocompleteXml(AutoCompleteSingleDataFileTransformerModel fileModel) {
|
||||
AutoCompleteSingleDataXmlModel xmlModel = new AutoCompleteSingleDataXmlModel();
|
||||
public static ExternalSelectDataXmlModel.ExternalSelectSourceXmlModel toAutocompleteXml(ExternalSelectDataFileTransformerModel.ExternalSelectSourceFileTransformerModel fileModel) {
|
||||
ExternalSelectDataXmlModel.ExternalSelectSourceXmlModel xmlModel = new ExternalSelectDataXmlModel.ExternalSelectSourceXmlModel();
|
||||
|
||||
xmlModel.setUrl(fileModel.getUrl());
|
||||
xmlModel.setAutoCompleteOptions(toComboBoxXml(fileModel.getAutoCompleteOptions()));
|
||||
xmlModel.setMethod(fileModel.getMethod());
|
||||
xmlModel.setOptionsRoot(fileModel.getOptionsRoot());
|
||||
xmlModel.setHasAuth(fileModel.getHasAuth());
|
||||
if (fileModel.getAuth() != null) {
|
||||
xmlModel.setAuth(toAuthXml(fileModel.getAuth()));
|
||||
}
|
||||
xmlModel.setSourceBinding(toExternalSelectSourceBindingXml(fileModel.getSourceBinding()));
|
||||
|
||||
return xmlModel;
|
||||
}
|
||||
|
||||
public static ComboBoxOptionXmlModel toComboBoxXml(ComboBoxOptionFileTransformerModel fileModel) {
|
||||
ComboBoxOptionXmlModel xmlModel = new ComboBoxOptionXmlModel();
|
||||
private static ExternalSelectDataXmlModel.ExternalSelectAuthDataXmlModel toAuthXml(ExternalSelectDataFileTransformerModel.ExternalSelectAuthDataFileTransformerModel fileModel) {
|
||||
ExternalSelectDataXmlModel.ExternalSelectAuthDataXmlModel xmlModel = new ExternalSelectDataXmlModel.ExternalSelectAuthDataXmlModel();
|
||||
xmlModel.setUrl(fileModel.getUrl());
|
||||
xmlModel.setType(fileModel.getType());
|
||||
xmlModel.setBody(fileModel.getBody());
|
||||
xmlModel.setMethod(fileModel.getMethod());
|
||||
xmlModel.setPath(fileModel.getPath());
|
||||
return xmlModel;
|
||||
}
|
||||
|
||||
public static ExternalSelectDataXmlModel.ExternalSelectSourceBindingXmlModel toExternalSelectSourceBindingXml(ExternalSelectDataFileTransformerModel.ExternalSelectSourceBindingFileTransformerModel fileModel) {
|
||||
ExternalSelectDataXmlModel.ExternalSelectSourceBindingXmlModel xmlModel = new ExternalSelectDataXmlModel.ExternalSelectSourceBindingXmlModel();
|
||||
|
||||
xmlModel.setUri(fileModel.getUri());
|
||||
xmlModel.setLabel(fileModel.getLabel());
|
||||
xmlModel.setValue(fileModel.getValue());
|
||||
xmlModel.setSource(fileModel.getSource());
|
||||
|
@ -24,15 +39,24 @@ public class FieldDataXmlMapper {
|
|||
return xmlModel;
|
||||
}
|
||||
|
||||
public static UploadOptionXmlModel toUploadXml(UploadOptionFileTransformerModel fileModel) {
|
||||
UploadOptionXmlModel xmlModel = new UploadOptionXmlModel();
|
||||
public static SelectDataXmlModel.OptionXmlModel toSelectOptionXml(SelectDataFileTransformerModel.OptionFileTransformerModel fileModel) {
|
||||
SelectDataXmlModel.OptionXmlModel xmlModel = new SelectDataXmlModel.OptionXmlModel();
|
||||
|
||||
xmlModel.setLabel(fileModel.getLabel());
|
||||
xmlModel.setValue(fileModel.getValue());
|
||||
|
||||
return xmlModel;
|
||||
}
|
||||
|
||||
public static UploadDataXmlModel.UploadDataOptionXmlModel toUploadXml(UploadDataFileTransformerModel.UploadDataOptionFileTransformerModel fileModel) {
|
||||
UploadDataXmlModel.UploadDataOptionXmlModel xmlModel = new UploadDataXmlModel.UploadDataOptionXmlModel();
|
||||
xmlModel.setLabel(fileModel.getLabel());
|
||||
xmlModel.setValue(fileModel.getValue());
|
||||
return xmlModel;
|
||||
}
|
||||
|
||||
public static RadioBoxOptionXmlModel toRadioBoxXml(RadioBoxOptionFileTransformerModel fileModel) {
|
||||
RadioBoxOptionXmlModel xmlModel = new RadioBoxOptionXmlModel();
|
||||
public static RadioBoxDataXmlModel.RadioBoxDataOptionXmlModel toRadioBoxXml(RadioBoxDataFileTransformerModel.RadioBoxDataOptionFileTransformerModel fileModel) {
|
||||
RadioBoxDataXmlModel.RadioBoxDataOptionXmlModel xmlModel = new RadioBoxDataXmlModel.RadioBoxDataOptionXmlModel();
|
||||
xmlModel.setLabel(fileModel.getLabel());
|
||||
xmlModel.setValue(fileModel.getValue());
|
||||
return xmlModel;
|
||||
|
|
|
@ -209,12 +209,12 @@ public class ExportXmlBuilderDatasetProfile {
|
|||
if (field.getData() != null) {
|
||||
Element dataOut = element.createElement("data");
|
||||
switch (field.getData().getFieldType()) {
|
||||
case WORD_LIST:
|
||||
case SELECT:
|
||||
{
|
||||
WordListDataXmlModel wordListDataEntityObject = (WordListDataXmlModel) field.getData();
|
||||
SelectDataXmlModel wordListDataEntityObject = (SelectDataXmlModel) field.getData();
|
||||
dataOut.setAttribute("label", wordListDataEntityObject.getLabel());
|
||||
dataOut.setAttribute("type", wordListDataEntityObject.getFieldType().getValue());
|
||||
dataOut.setAttribute("multiList", wordListDataEntityObject.getMultiList().toString());
|
||||
dataOut.setAttribute("multipleSelect", wordListDataEntityObject.getMultipleSelect().toString());
|
||||
Element options = element.createElement("options");
|
||||
wordListDataEntityObject.getOptions().forEach(optionChildFor -> {
|
||||
Element optionChild = element.createElement("option");
|
||||
|
@ -222,26 +222,34 @@ public class ExportXmlBuilderDatasetProfile {
|
|||
optionChild.setAttribute("value", optionChildFor.getValue());
|
||||
options.appendChild(optionChild);
|
||||
});
|
||||
|
||||
dataOut.appendChild(options);
|
||||
break;
|
||||
}
|
||||
case AUTO_COMPLETE:
|
||||
case EXTERNAL_SELECT:
|
||||
{
|
||||
AutoCompleteDataXmlModel autoCompleteDataEntityObject = (AutoCompleteDataXmlModel) field.getData();
|
||||
ExternalSelectDataXmlModel autoCompleteDataEntityObject = (ExternalSelectDataXmlModel) field.getData();
|
||||
dataOut.setAttribute("label", autoCompleteDataEntityObject.getLabel());
|
||||
dataOut.setAttribute("type", autoCompleteDataEntityObject.getFieldType().getValue());
|
||||
dataOut.setAttribute("multiAutoComplete", autoCompleteDataEntityObject.getMultiAutoComplete().toString());
|
||||
for (AutoCompleteSingleDataXmlModel singleData: autoCompleteDataEntityObject.getAutoCompleteSingleDataList()) {
|
||||
Element singleItem = element.createElement("autocompleteSingle");
|
||||
//singleItem.setAttribute("optionsRoot", singleData.getAutoCompleteOptions());
|
||||
dataOut.setAttribute("multipleSelect", autoCompleteDataEntityObject.getMultipleSelect().toString());
|
||||
for (ExternalSelectDataXmlModel.ExternalSelectSourceXmlModel singleData: autoCompleteDataEntityObject.getSources()) {
|
||||
Element singleItem = element.createElement("selectSource");
|
||||
singleItem.setAttribute("method", singleData.getMethod());
|
||||
singleItem.setAttribute("url", singleData.getUrl());
|
||||
singleItem.setAttribute("source", singleData.getAutoCompleteOptions().getSource());
|
||||
//singleItem.setAttribute("autoCompleteType", Integer.toString(singleData.getAutoCompleteOptions().));
|
||||
if (singleData.getAutoCompleteOptions() != null) {
|
||||
Element optionChild = element.createElement("option");
|
||||
optionChild.setAttribute("label", singleData.getAutoCompleteOptions().getLabel());
|
||||
optionChild.setAttribute("value", singleData.getAutoCompleteOptions().getValue());
|
||||
singleItem.appendChild(optionChild);
|
||||
singleItem.setAttribute("optionsRoot", singleData.getOptionsRoot());
|
||||
singleItem.setAttribute("label", singleData.getSourceBinding().getLabel());
|
||||
singleItem.setAttribute("value", singleData.getSourceBinding().getValue());
|
||||
singleItem.setAttribute("source", singleData.getSourceBinding().getSource());
|
||||
singleItem.setAttribute("hasAuth", singleData.getHasAuth().toString());
|
||||
|
||||
if (singleData.getAuth() != null) {
|
||||
Element authItem = element.createElement("sourceAuth");
|
||||
authItem.setAttribute("method", singleData.getAuth().getMethod());
|
||||
authItem.setAttribute("url", singleData.getAuth().getUrl());
|
||||
authItem.setAttribute("path", singleData.getAuth().getPath());
|
||||
authItem.setAttribute("body", singleData.getAuth().getBody());
|
||||
authItem.setAttribute("type", singleData.getAuth().getType());
|
||||
singleItem.appendChild(authItem);
|
||||
}
|
||||
dataOut.appendChild(singleItem);
|
||||
}
|
||||
|
@ -309,7 +317,7 @@ public class ExportXmlBuilderDatasetProfile {
|
|||
case EXTERNAL_DATASETS:
|
||||
ExternalDatasetDataXmlModel externalDatasetDataEntity = (ExternalDatasetDataXmlModel) field.getData();
|
||||
dataOut.setAttribute("label", externalDatasetDataEntity.getLabel());
|
||||
dataOut.setAttribute("multiAutocomplete", externalDatasetDataEntity.getMultiAutoComplete().toString());
|
||||
dataOut.setAttribute("multipleSelect", externalDatasetDataEntity.getMultipleSelect().toString());
|
||||
dataOut.setAttribute("type", externalDatasetDataEntity.getType().getValue());
|
||||
break;
|
||||
case DATA_REPOSITORIES:
|
||||
|
@ -323,9 +331,9 @@ public class ExportXmlBuilderDatasetProfile {
|
|||
case RESEARCHERS:
|
||||
case PUBLICATIONS:
|
||||
case ORGANIZATIONS:
|
||||
LabelAndMultiplicityFieldDataXmlModel dataRepositoryDataEntity = (LabelAndMultiplicityFieldDataXmlModel) field.getData();
|
||||
LabelAndMultiplicityDataXmlModel dataRepositoryDataEntity = (LabelAndMultiplicityDataXmlModel) field.getData();
|
||||
dataOut.setAttribute("label", dataRepositoryDataEntity.getLabel());
|
||||
dataOut.setAttribute("multiAutocomplete", dataRepositoryDataEntity.getMultiAutoComplete().toString());
|
||||
dataOut.setAttribute("multipleSelect", dataRepositoryDataEntity.getMultipleSelect().toString());
|
||||
break;
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue