use commons models

This commit is contained in:
Efstratios Giannopoulos 2024-03-01 17:43:17 +02:00
parent 31e3cbcf12
commit d6cc4fd597
40 changed files with 11 additions and 1581 deletions

View File

@ -48,6 +48,11 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>gr.cite.opendmp</groupId>
<artifactId>common-models</artifactId>
<version>0.0.1</version>
</dependency>
</dependencies>
<build>
<plugins>

View File

@ -1,10 +1,12 @@
package eu.eudat.depositinterface.enums;
import com.fasterxml.jackson.annotation.JsonValue;
import eu.eudat.commonmodels.enums.EnumUtils;
import eu.eudat.commonmodels.enums.EnumValueProvider;
import java.util.Map;
public enum DepositType implements EnumValueProvider<Short>{
public enum DepositType implements EnumValueProvider<Short> {
SystemDeposit((short) 0), UserDeposit((short) 1), BothWaysDeposit((short) 2);
private final Short value;

View File

@ -1,29 +0,0 @@
package eu.eudat.depositinterface.enums;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Map;
public enum DmpAccessType implements EnumValueProvider<Short> {
Public((short) 0), Restricted((short) 1);
private final Short value;
DmpAccessType(Short value) {
this.value = value;
}
@Override
@JsonValue
public Short getValue() {
return value;
}
private static final Map<Short, DmpAccessType> map = EnumUtils.getEnumValueMap(DmpAccessType.class);
public static DmpAccessType of(Short i) {
return map.get(i);
}
}

View File

@ -1,32 +0,0 @@
package eu.eudat.depositinterface.enums;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Map;
public enum DmpUserRole implements EnumValueProvider<Short> {
Owner((short) 0),
User((short) 1),
DescriptionContributor((short) 2),
Reviewer((short) 3);
private final Short value;
DmpUserRole(Short value) {
this.value = value;
}
@Override
@JsonValue
public Short getValue() {
return value;
}
private static final Map<Short, DmpUserRole> map = EnumUtils.getEnumValueMap(DmpUserRole.class);
public static DmpUserRole of(Short i) {
return map.get(i);
}
}

View File

@ -1,14 +0,0 @@
package eu.eudat.depositinterface.enums;
import java.util.HashMap;
import java.util.Map;
public class EnumUtils {
public static <EnumType extends Enum<EnumType> & EnumValueProvider<EnumValue>, EnumValue> Map<EnumValue, EnumType> getEnumValueMap(Class<EnumType> enumType){
HashMap<EnumValue, EnumType> map = new HashMap<>();
for (EnumType v : enumType.getEnumConstants()) {
map.put(v.getValue(), v);
}
return map;
}
}

View File

@ -1,8 +0,0 @@
package eu.eudat.depositinterface.enums;
import com.fasterxml.jackson.annotation.JsonValue;
public interface EnumValueProvider<T> {
@JsonValue
T getValue();
}

View File

@ -1,62 +0,0 @@
package eu.eudat.depositinterface.enums;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Map;
public enum FieldType implements EnumValueProvider<String> {
SELECT(Names.Select),
BOOLEAN_DECISION(Names.BooleanDecision),
RADIO_BOX(Names.RadioBox),
INTERNAL_ENTRIES_DMPS(Names.InternalEntitiesDmps),
INTERNAL_ENTRIES_DESCRIPTIONS(Names.InternalEntitiesDescriptions),
CHECK_BOX(Names.CheckBox),
FREE_TEXT(Names.FreeText),
TEXT_AREA(Names.TextArea),
RICH_TEXT_AREA(Names.RichTextarea),
UPLOAD(Names.Upload),
DATE_PICKER(Names.DatePicker),
TAGS(Names.Tags),
REFERENCE_TYPES(Names.ReferenceTypes),
DATASET_IDENTIFIER(Names.DatasetIdentifier),
CURRENCY(Names.Currency),
VALIDATION(Names.Validation);
private final String value;
public static class Names {
public static final String Select = "select";
public static final String BooleanDecision = "booleanDecision";
public static final String RadioBox = "radiobox";
public static final String InternalEntitiesDmps = "internalEntitiesDmps";
public static final String InternalEntitiesDescriptions = "internalEntitiesDescriptions";
public static final String CheckBox = "checkBox";
public static final String FreeText = "freetext";
public static final String TextArea = "textarea";
public static final String RichTextarea = "richTextarea";
public static final String Upload = "upload";
public static final String DatePicker = "datePicker";
public static final String Tags = "tags";
public static final String DatasetIdentifier = "datasetIdentifier";
public static final String Currency = "currency";
public static final String Validation = "validation";
public static final String ReferenceTypes = "referenceTypes";
}
FieldType(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
private static final Map<String, FieldType> map = EnumUtils.getEnumValueMap(FieldType.class);
public static FieldType of(String i) {
return map.get(i);
}
}

View File

@ -1,30 +0,0 @@
package eu.eudat.depositinterface.enums;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.Map;
public enum FieldValidationType implements EnumValueProvider<Short> {
None((short) 0),
Required((short) 1),
Url((short) 2);
private final Short value;
FieldValidationType(Short value) {
this.value = value;
}
@JsonValue
public Short getValue() {
return value;
}
private static final Map<Short, FieldValidationType> map = EnumUtils.getEnumValueMap(FieldValidationType.class);
public static FieldValidationType of(Short i) {
return map.get(i);
}
}

View File

@ -1,26 +0,0 @@
package eu.eudat.depositinterface.enums;
import java.util.Map;
public enum ReferenceSourceType implements EnumValueProvider<Short> {
Internal((short) 0),
External((short) 1);
private final Short value;
ReferenceSourceType(Short value) {
this.value = value;
}
@Override
public Short getValue() {
return value;
}
private static final Map<Short, ReferenceSourceType> map = EnumUtils.getEnumValueMap(ReferenceSourceType.class);
public static ReferenceSourceType of(Short i) {
return map.get(i);
}
}

View File

@ -1,129 +0,0 @@
package eu.eudat.depositinterface.models;
import eu.eudat.depositinterface.enums.DmpAccessType;
import eu.eudat.depositinterface.models.description.DescriptionModel;
import eu.eudat.depositinterface.models.reference.ReferenceModel;
import java.time.Instant;
import java.util.UUID;
import java.util.List;
public class DmpModel {
private UUID id;
private short version;
private String label;
private String description;
private DmpAccessType accessType;
private List<DescriptionModel> descriptions;
private List<DmpUserModel> users;
private List<ReferenceModel> references;
private FileEnvelopeModel pdfFile;
private FileEnvelopeModel rdaJsonFile;
private FileEnvelopeModel supportingFilesZip;
private String previousDOI;
private Instant finalizedAt;
public UUID getId() {
return id;
}
public void setId(UUID id) {
this.id = id;
}
public short getVersion() {
return version;
}
public void setVersion(short version) {
this.version = version;
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public DmpAccessType getAccessType() {
return accessType;
}
public void setAccessType(DmpAccessType accessType) {
this.accessType = accessType;
}
public List<DmpUserModel> getUsers() {
return users;
}
public void setUsers(List<DmpUserModel> users) {
this.users = users;
}
public List<ReferenceModel> getReferences() {
return references;
}
public void setReferences(List<ReferenceModel> references) {
this.references = references;
}
public FileEnvelopeModel getPdfFile() {
return pdfFile;
}
public void setPdfFile(FileEnvelopeModel pdfFile) {
this.pdfFile = pdfFile;
}
public FileEnvelopeModel getRdaJsonFile() {
return rdaJsonFile;
}
public void setRdaJsonFile(FileEnvelopeModel rdaJsonFile) {
this.rdaJsonFile = rdaJsonFile;
}
public FileEnvelopeModel getSupportingFilesZip() {
return supportingFilesZip;
}
public void setSupportingFilesZip(FileEnvelopeModel supportingFilesZip) {
this.supportingFilesZip = supportingFilesZip;
}
public String getPreviousDOI() {
return previousDOI;
}
public void setPreviousDOI(String previousDOI) {
this.previousDOI = previousDOI;
}
public Instant getFinalizedAt() {
return finalizedAt;
}
public void setFinalizedAt(Instant finalizedAt) {
this.finalizedAt = finalizedAt;
}
public List<DescriptionModel> getDescriptions() {
return descriptions;
}
public void setDescriptions(List<DescriptionModel> descriptions) {
this.descriptions = descriptions;
}
}

View File

@ -1,24 +0,0 @@
package eu.eudat.depositinterface.models;
import eu.eudat.depositinterface.enums.DmpUserRole;
public class DmpUserModel {
private UserModel user;
private DmpUserRole role;
public UserModel getUser() {
return user;
}
public void setUser(UserModel user) {
this.user = user;
}
public DmpUserRole getRole() {
return role;
}
public void setRole(DmpUserRole role) {
this.role = role;
}
}

View File

@ -1,22 +0,0 @@
package eu.eudat.depositinterface.models;
public class FileEnvelopeModel {
private String filename;
private byte[] file;
public String getFilename() {
return filename;
}
public void setFilename(String filename) {
this.filename = filename;
}
public byte[] getFile() {
return file;
}
public void setFile(byte[] file) {
this.file = file;
}
}

View File

@ -1,13 +0,0 @@
package eu.eudat.depositinterface.models;
public class UserModel {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

View File

@ -1,44 +0,0 @@
package eu.eudat.depositinterface.models.description;
import eu.eudat.depositinterface.models.descriptiotemplate.DescriptionTemplateModel;
public class DescriptionModel {
private String label;
private String description;
private DescriptionTemplateModel descriptionTemplate;
private PropertyDefinitionModel properties;
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public PropertyDefinitionModel getProperties() {
return properties;
}
public void setProperties(PropertyDefinitionModel properties) {
this.properties = properties;
}
public DescriptionTemplateModel getDescriptionTemplate() {
return descriptionTemplate;
}
public void setDescriptionTemplate(DescriptionTemplateModel descriptionTemplate) {
this.descriptionTemplate = descriptionTemplate;
}
}

View File

@ -1,24 +0,0 @@
package eu.eudat.depositinterface.models.description;
public class ExternalIdentifierModel {
private String identifier;
private String type;
public String getIdentifier() {
return identifier;
}
public void setIdentifier(String identifier) {
this.identifier = identifier;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
}

View File

@ -1,59 +0,0 @@
package eu.eudat.depositinterface.models.description;
import eu.eudat.depositinterface.models.reference.ReferenceModel;
import java.time.Instant;
import java.util.List;
public class FieldModel {
private String textValue;
private List<String> textListValue;
private Instant dateValue;
private List<ReferenceModel> references;
private ExternalIdentifierModel externalIdentifier;
public String getTextValue() {
return textValue;
}
public void setTextValue(String textValue) {
this.textValue = textValue;
}
public List<String> getTextListValue() {
return textListValue;
}
public void setTextListValue(List<String> textListValue) {
this.textListValue = textListValue;
}
public Instant getDateValue() {
return dateValue;
}
public void setDateValue(Instant dateValue) {
this.dateValue = dateValue;
}
public List<ReferenceModel> getReferences() {
return references;
}
public void setReferences(List<ReferenceModel> references) {
this.references = references;
}
public ExternalIdentifierModel getExternalIdentifier() {
return externalIdentifier;
}
public void setExternalIdentifier(ExternalIdentifierModel externalIdentifier) {
this.externalIdentifier = externalIdentifier;
}
}

View File

@ -1,36 +0,0 @@
package eu.eudat.depositinterface.models.description;
import java.util.Map;
public class PropertyDefinitionFieldSetItemModel {
private Map<String, FieldModel> fields;
private String comment;
private Integer ordinal;
public Map<String, FieldModel> getFields() {
return fields;
}
public void setFields(Map<String, FieldModel> fields) {
this.fields = fields;
}
public String getComment() {
return comment;
}
public void setComment(String comment) {
this.comment = comment;
}
public Integer getOrdinal() {
return ordinal;
}
public void setOrdinal(Integer ordinal) {
this.ordinal = ordinal;
}
}

View File

@ -1,16 +0,0 @@
package eu.eudat.depositinterface.models.description;
import java.util.List;
public class PropertyDefinitionFieldSetModel {
private List<PropertyDefinitionFieldSetItemModel> items;
public List<PropertyDefinitionFieldSetItemModel> getItems() {
return items;
}
public void setItems(List<PropertyDefinitionFieldSetItemModel> items) {
this.items = items;
}
}

View File

@ -1,16 +0,0 @@
package eu.eudat.depositinterface.models.description;
import java.util.Map;
public class PropertyDefinitionModel {
private Map<String, PropertyDefinitionFieldSetModel> fieldSets;
public Map<String, PropertyDefinitionFieldSetModel> getFieldSets() {
return fieldSets;
}
public void setFieldSets(Map<String, PropertyDefinitionFieldSetModel> fieldSets) {
this.fieldSets = fieldSets;
}
}

View File

@ -1,47 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate;
import java.util.ArrayList;
import java.util.List;
public class DefinitionModel {
private List<PageModel> pages;
public List<PageModel> getPages() {
return pages;
}
public void setPages(List<PageModel> pages) {
this.pages = pages;
}
public List<FieldModel> getAllField(){
List<FieldModel> fieldEntities = new ArrayList<>();
if (this.getPages() != null){
for (PageModel pageModel: this.getPages()) {
fieldEntities.addAll(pageModel.getAllField());
}
}
return fieldEntities;
}
public List<FieldSetModel> getAllFieldSets(){
List<FieldSetModel> fieldSetsEntities = new ArrayList<>();
if (this.getPages() != null){
for (PageModel pageModel: this.getPages()) {
fieldSetsEntities.addAll(pageModel.getAllFieldSets());
}
}
return fieldSetsEntities;
}
public List<FieldSetModel> getFieldSetById(String id) {
return this.getAllFieldSets().stream().filter(x-> id.equals(x.getId())).toList();
}
public List<FieldModel> getFieldById(String id) {
return this.getAllField().stream().filter(x-> id.equals(x.getId())).toList();
}
}

View File

@ -1,79 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate;
import java.util.UUID;
public class DescriptionTemplateModel {
private UUID id;
private String label;
private String description;
private UUID groupId;
private Short version;
private String language;
private DefinitionModel definition;
public UUID getId() {
return id;
}
public void setId(UUID id) {
this.id = id;
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public UUID getGroupId() {
return groupId;
}
public void setGroupId(UUID groupId) {
this.groupId = groupId;
}
public Short getVersion() {
return version;
}
public void setVersion(Short version) {
this.version = version;
}
public String getLanguage() {
return language;
}
public void setLanguage(String language) {
this.language = language;
}
public DefinitionModel getDefinition() {
return definition;
}
public void setDefinition(DefinitionModel definition) {
this.definition = definition;
}
}

View File

@ -1,99 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate;
import eu.eudat.depositinterface.enums.FieldValidationType;
import eu.eudat.depositinterface.models.descriptiotemplate.fielddata.BaseFieldDataModel;
import java.util.List;
public class FieldModel {
private String id;
private Integer ordinal;
private String numbering;
private List<String> schematics;
private String defaultValue;
private List<RuleModel> visibilityRules;
private List<FieldValidationType> validations;
private Boolean includeInExport;
private BaseFieldDataModel data;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Integer getOrdinal() {
return ordinal;
}
public void setOrdinal(Integer ordinal) {
this.ordinal = ordinal;
}
public String getNumbering() {
return numbering;
}
public void setNumbering(String numbering) {
this.numbering = numbering;
}
public List<String> getSchematics() {
return schematics;
}
public void setSchematics(List<String> schematics) {
this.schematics = schematics;
}
public String getDefaultValue() {
return defaultValue;
}
public void setDefaultValue(String defaultValue) {
this.defaultValue = defaultValue;
}
public List<RuleModel> getVisibilityRules() {
return visibilityRules;
}
public void setVisibilityRules(List<RuleModel> visibilityRules) {
this.visibilityRules = visibilityRules;
}
public List<FieldValidationType> getValidations() {
return validations;
}
public void setValidations(List<FieldValidationType> validations) {
this.validations = validations;
}
public Boolean getIncludeInExport() {
return includeInExport;
}
public void setIncludeInExport(Boolean includeInExport) {
this.includeInExport = includeInExport;
}
public BaseFieldDataModel getData() {
return data;
}
public void setData(BaseFieldDataModel data) {
this.data = data;
}
}

View File

@ -1,118 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate;
import java.util.ArrayList;
import java.util.List;
public class FieldSetModel {
private String id;
private Integer ordinal;
private String numbering;
private String title;
private String description;
private String extendedDescription;
private String additionalInformation;
private MultiplicityModel multiplicity;
private Boolean hasCommentField;
private List<FieldModel> fields;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Integer getOrdinal() {
return ordinal;
}
public void setOrdinal(Integer ordinal) {
this.ordinal = ordinal;
}
public String getNumbering() {
return numbering;
}
public void setNumbering(String numbering) {
this.numbering = numbering;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getExtendedDescription() {
return extendedDescription;
}
public void setExtendedDescription(String extendedDescription) {
this.extendedDescription = extendedDescription;
}
public String getAdditionalInformation() {
return additionalInformation;
}
public void setAdditionalInformation(String additionalInformation) {
this.additionalInformation = additionalInformation;
}
public MultiplicityModel getMultiplicity() {
return multiplicity;
}
public void setMultiplicity(MultiplicityModel multiplicity) {
this.multiplicity = multiplicity;
}
public Boolean getHasCommentField() {
return hasCommentField;
}
public void setHasCommentField(Boolean hasCommentField) {
this.hasCommentField = hasCommentField;
}
public List<FieldModel> getFields() {
return fields;
}
public void setFields(List<FieldModel> fields) {
this.fields = fields;
}
public List<FieldModel> getAllField() {
return this.getFields() == null ? new ArrayList<>() : this.getFields();
}
public List<FieldModel> getFieldById(String id) {
return this.getAllField().stream().filter(x-> id.equals(x.getId())).toList();
}
}

View File

@ -1,44 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate;
public class MultiplicityModel {
private Integer min;
private Integer max;
private String placeholder;
private Boolean tableView;
public Integer getMin() {
return min;
}
public void setMin(Integer min) {
this.min = min;
}
public Integer getMax() {
return max;
}
public void setMax(Integer max) {
this.max = max;
}
public String getPlaceholder() {
return placeholder;
}
public void setPlaceholder(String placeholder) {
this.placeholder = placeholder;
}
public Boolean getTableView() {
return tableView;
}
public void setTableView(Boolean tableView) {
this.tableView = tableView;
}
}

View File

@ -1,66 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate;
import java.util.ArrayList;
import java.util.List;
public class PageModel {
private String id;
private Integer ordinal;
private String title;
private List<SectionModel> sections;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Integer getOrdinal() {
return ordinal;
}
public void setOrdinal(Integer ordinal) {
this.ordinal = ordinal;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public List<SectionModel> getSections() {
return sections;
}
public void setSections(List<SectionModel> sections) {
this.sections = sections;
}
public List<FieldModel> getAllField(){
List<FieldModel> fieldEntities = new ArrayList<>();
if (this.getSections() != null){
for (SectionModel sectionModel: this.getSections()) {
fieldEntities.addAll(sectionModel.getAllField());
}
}
return fieldEntities;
}
public List<FieldSetModel> getAllFieldSets(){
List<FieldSetModel> fieldSetsEntities = new ArrayList<>();
if (this.getSections() != null){
for (SectionModel sectionModel: this.getSections()) {
fieldSetsEntities.addAll(sectionModel.getAllFieldSets());
}
}
return fieldSetsEntities;
}
}

View File

@ -1,24 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate;
public class RuleModel {
private String target;
private String value;
public String getTarget() {
return target;
}
public void setTarget(String target) {
this.target = target;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

View File

@ -1,135 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate;
import java.util.ArrayList;
import java.util.List;
public class SectionModel {
private String id;
private Integer ordinal;
private Boolean defaultVisibility;
private Boolean multiplicity;
private String numbering;
private String title;
private String description;
private String extendedDescription;
private List<SectionModel> sections;
private List<FieldSetModel> fieldSets;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Integer getOrdinal() {
return ordinal;
}
public void setOrdinal(Integer ordinal) {
this.ordinal = ordinal;
}
public Boolean getDefaultVisibility() {
return defaultVisibility;
}
public void setDefaultVisibility(Boolean defaultVisibility) {
this.defaultVisibility = defaultVisibility;
}
public Boolean getMultiplicity() {
return multiplicity;
}
public void setMultiplicity(Boolean multiplicity) {
this.multiplicity = multiplicity;
}
public String getNumbering() {
return numbering;
}
public void setNumbering(String numbering) {
this.numbering = numbering;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getExtendedDescription() {
return extendedDescription;
}
public void setExtendedDescription(String extendedDescription) {
this.extendedDescription = extendedDescription;
}
public List<SectionModel> getSections() {
return sections;
}
public void setSections(List<SectionModel> sections) {
this.sections = sections;
}
public List<FieldSetModel> getFieldSets() {
return fieldSets;
}
public void setFieldSets(List<FieldSetModel> fieldSets) {
this.fieldSets = fieldSets;
}
public List<FieldModel> getAllField(){
List<FieldModel> fieldEntities = new ArrayList<>();
if (this.getFieldSets() != null){
for (FieldSetModel fieldSetModel: this.getFieldSets()) {
fieldEntities.addAll(fieldSetModel.getAllField());
}
}
if (this.getSections() != null){
for (SectionModel sectionModel: this.getSections()) {
fieldEntities.addAll(sectionModel.getAllField());
}
}
return fieldEntities;
}
public List<FieldSetModel> getAllFieldSets(){
List<FieldSetModel> fieldSetEntities = new ArrayList<>();
if (this.getFieldSets() != null){
fieldSetEntities.addAll(this.getFieldSets());
}
if (this.getSections() != null){
for (SectionModel sectionModel: this.getSections()) {
fieldSetEntities.addAll(sectionModel.getAllFieldSets());
}
}
return fieldSetEntities;
}
}

View File

@ -1,53 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate.fielddata;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import eu.eudat.depositinterface.enums.FieldType;
@JsonTypeInfo(
use = JsonTypeInfo.Id.NAME,
include = JsonTypeInfo.As.PROPERTY,
property = "fieldType",
visible = true,
defaultImpl = LabelDataModel.class)
@JsonSubTypes({
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.BooleanDecision),
@JsonSubTypes.Type(value = LabelAndMultiplicityDataModel.class, name = FieldType.Names.InternalEntitiesDescriptions),
@JsonSubTypes.Type(value = LabelAndMultiplicityDataModel.class, name = FieldType.Names.InternalEntitiesDmps),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.CheckBox),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.DatePicker),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.FreeText),
@JsonSubTypes.Type(value = ReferenceTypeDataModel.class, name = FieldType.Names.ReferenceTypes),
@JsonSubTypes.Type(value = RadioBoxDataModel.class, name = FieldType.Names.RadioBox),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.RichTextarea),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.Tags),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.TextArea),
@JsonSubTypes.Type(value = UploadDataModel.class, name = FieldType.Names.Upload),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.Validation),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.DatasetIdentifier),
@JsonSubTypes.Type(value = LabelDataModel.class, name = FieldType.Names.Currency),
@JsonSubTypes.Type(value = SelectDataModel.class, name = FieldType.Names.Select)
})
public abstract class BaseFieldDataModel {
private String label;
private FieldType fieldType;
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;
}
}

View File

@ -1,13 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate.fielddata;
public class LabelAndMultiplicityDataModel extends BaseFieldDataModel {
private Boolean multipleSelect;
public Boolean getMultipleSelect() {
return multipleSelect;
}
public void setMultipleSelect(Boolean multipleSelect) {
this.multipleSelect = multipleSelect;
}
}

View File

@ -1,5 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate.fielddata;
public class LabelDataModel extends BaseFieldDataModel {
}

View File

@ -1,37 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate.fielddata;
import java.util.List;
public class RadioBoxDataModel extends BaseFieldDataModel {
private List<RadioBoxOptionModel> options;
public List<RadioBoxOptionModel> getOptions() {
return options;
}
public void setOptions(List<RadioBoxOptionModel> options) {
this.options = options;
}
public static class RadioBoxOptionModel {
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;
}
}
}

View File

@ -1,25 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate.fielddata;
import eu.eudat.depositinterface.models.reference.ReferenceTypeModel;
public class ReferenceTypeDataModel extends BaseFieldDataModel {
private Boolean multipleSelect;
private ReferenceTypeModel referenceType;
public Boolean getMultipleSelect() {
return multipleSelect;
}
public void setMultipleSelect(Boolean multipleSelect) {
this.multipleSelect = multipleSelect;
}
public ReferenceTypeModel getReferenceType() {
return referenceType;
}
public void setReferenceType(ReferenceTypeModel referenceType) {
this.referenceType = referenceType;
}
}

View File

@ -1,36 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate.fielddata;
import java.util.List;
public class SelectDataModel extends LabelAndMultiplicityDataModel {
private List<OptionModel> options;
public List<OptionModel> getOptions() {
return options;
}
public void setOptions(List<OptionModel> options) {
this.options = options;
}
public static class OptionModel {
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;
}
}
}

View File

@ -1,36 +0,0 @@
package eu.eudat.depositinterface.models.descriptiotemplate.fielddata;
import java.util.List;
public class UploadDataModel extends BaseFieldDataModel {
private List<UploadOptionModel> types;
public List<UploadOptionModel> getTypes() {
return types;
}
public void setTypes(List<UploadOptionModel> types) {
this.types = types;
}
public static class UploadOptionModel {
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;
}
}
}

View File

@ -1,16 +0,0 @@
package eu.eudat.depositinterface.models.reference;
import java.util.List;
public class ReferenceDefinitionModel {
private List<ReferenceFieldModel> fields;
public List<ReferenceFieldModel> getFields() {
return fields;
}
public void setFields(List<ReferenceFieldModel> fields) {
this.fields = fields;
}
}

View File

@ -1,26 +0,0 @@
package eu.eudat.depositinterface.models.reference;
public class ReferenceFieldModel {
private String code;
private String value;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

View File

@ -1,99 +0,0 @@
package eu.eudat.depositinterface.models.reference;
import eu.eudat.depositinterface.enums.ReferenceSourceType;
import java.util.UUID;
public class ReferenceModel {
private UUID id;
private String label;
private ReferenceTypeModel type;
private String description;
private ReferenceDefinitionModel definition;
private String reference;
private String abbreviation;
private String source;
private ReferenceSourceType sourceType;
public UUID getId() {
return id;
}
public void setId(UUID id) {
this.id = id;
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public ReferenceDefinitionModel getDefinition() {
return definition;
}
public void setDefinition(ReferenceDefinitionModel definition) {
this.definition = definition;
}
public String getReference() {
return reference;
}
public void setReference(String reference) {
this.reference = reference;
}
public String getAbbreviation() {
return abbreviation;
}
public void setAbbreviation(String abbreviation) {
this.abbreviation = abbreviation;
}
public String getSource() {
return source;
}
public void setSource(String source) {
this.source = source;
}
public ReferenceSourceType getSourceType() {
return sourceType;
}
public void setSourceType(ReferenceSourceType sourceType) {
this.sourceType = sourceType;
}
public ReferenceTypeModel getType() {
return type;
}
public void setType(ReferenceTypeModel type) {
this.type = type;
}
}

View File

@ -1,36 +0,0 @@
package eu.eudat.depositinterface.models.reference;
import java.util.UUID;
public class ReferenceTypeModel {
private UUID id;
private String name;
private String code;
public UUID getId() {
return id;
}
public void setId(UUID id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
}

View File

@ -1,6 +1,7 @@
package eu.eudat.depositinterface.repository;
import eu.eudat.depositinterface.models.DmpModel;
import eu.eudat.commonmodels.models.DmpModel;
/**
* The RepositoryDeposit interface represents the mechanism of depositing a dmp to any

View File

@ -1,6 +1,6 @@
package eu.eudat.depositinterface.repository;
import eu.eudat.depositinterface.models.DmpModel;
import eu.eudat.commonmodels.models.DmpModel;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;