file-transformer-xml/core/src/main/java/eu/eudat/file/transformer/models/descriptiontemplate/definition/fielddata/BaseFieldDataXmlModel.java

82 lines
4.1 KiB
Java

package eu.eudat.file.transformer.models.descriptiontemplate.definition.fielddata;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
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;
private FieldType fieldType;
private String value;
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public FieldType getFieldType() {
return fieldType;
}
public void setFieldType(FieldType fieldType) {
this.fieldType = fieldType;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}