Adding mappers for description definitions to PagedDatasetProfile model
This commit is contained in:
parent
dd7007128b
commit
37c170ea54
|
@ -0,0 +1,34 @@
|
||||||
|
package eu.eudat.model.mapper.publicapi;
|
||||||
|
|
||||||
|
import eu.eudat.commons.types.descriptiontemplate.MultiplicityEntity;
|
||||||
|
import eu.eudat.model.publicapi.datasetwizard.FieldSet;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class DescriptionFieldSetToDatasetFieldSetMapper {
|
||||||
|
|
||||||
|
private final DescriptionFieldToDatasetFieldMapper descriptionFieldToDatasetFieldMapper;
|
||||||
|
|
||||||
|
public DescriptionFieldSetToDatasetFieldSetMapper(DescriptionFieldToDatasetFieldMapper descriptionFieldToDatasetFieldMapper) {
|
||||||
|
this.descriptionFieldToDatasetFieldMapper = descriptionFieldToDatasetFieldMapper;
|
||||||
|
}
|
||||||
|
|
||||||
|
public FieldSet toPublicModel(eu.eudat.model.descriptiontemplatedefinition.FieldSet fieldSet) {
|
||||||
|
FieldSet model = new FieldSet();
|
||||||
|
model.setId(fieldSet.getId());
|
||||||
|
model.setDescription(fieldSet.getDescription());
|
||||||
|
model.setOrdinal(fieldSet.getOrdinal());
|
||||||
|
model.setNumbering(fieldSet.getNumbering());
|
||||||
|
model.setTitle(fieldSet.getTitle());
|
||||||
|
model.setAdditionalInformation(fieldSet.getAdditionalInformation());
|
||||||
|
model.setExtendedDescription(fieldSet.getExtendedDescription());
|
||||||
|
MultiplicityEntity multiplicityEntity = new MultiplicityEntity();
|
||||||
|
multiplicityEntity.setMin(fieldSet.getMultiplicity().getMin());
|
||||||
|
multiplicityEntity.setMax(fieldSet.getMultiplicity().getMax());
|
||||||
|
multiplicityEntity.setPlaceholder(fieldSet.getMultiplicity().getPlaceholder());
|
||||||
|
multiplicityEntity.setTableView(fieldSet.getMultiplicity().getTableView());
|
||||||
|
model.setMultiplicity(multiplicityEntity);
|
||||||
|
model.setFields(fieldSet.getFields().stream().map(descriptionFieldToDatasetFieldMapper::toPublicModel).toList());
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,39 @@
|
||||||
|
package eu.eudat.model.mapper.publicapi;
|
||||||
|
|
||||||
|
import eu.eudat.commons.types.descriptiontemplate.RuleEntity;
|
||||||
|
import eu.eudat.commons.types.descriptiontemplate.todelete.DefaultValueEntity;
|
||||||
|
import eu.eudat.commons.types.descriptiontemplate.todelete.FieldDescriptionEntity;
|
||||||
|
import eu.eudat.commons.types.descriptiontemplate.todelete.VisibilityEntity;
|
||||||
|
import eu.eudat.model.publicapi.datasetwizard.Field;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class DescriptionFieldToDatasetFieldMapper {
|
||||||
|
|
||||||
|
public Field toPublicModel(eu.eudat.model.descriptiontemplatedefinition.Field field) {
|
||||||
|
Field model = new Field();
|
||||||
|
model.setId(field.getId());
|
||||||
|
model.setOrdinal(field.getOrdinal());
|
||||||
|
model.setData(field.getData());
|
||||||
|
model.setDatatype(field.getData().getFieldType().name());
|
||||||
|
DefaultValueEntity defaultValueEntity = new DefaultValueEntity();
|
||||||
|
defaultValueEntity.setType(field.getData().getFieldType().name());
|
||||||
|
defaultValueEntity.setValue(field.getDefaultValue());
|
||||||
|
model.setDefaultValue(defaultValueEntity);
|
||||||
|
model.setExport(field.getIncludeInExport());
|
||||||
|
model.setNumbering(field.getNumbering());
|
||||||
|
model.setSchematics(field.getSchematics());
|
||||||
|
model.setValidations(field.getValidations().stream().map(x -> (int) x.getValue()).toList());
|
||||||
|
VisibilityEntity visibilityEntity = new VisibilityEntity();
|
||||||
|
visibilityEntity.setRules(field.getVisibilityRules().stream().map(x -> {
|
||||||
|
RuleEntity ruleEntity = new RuleEntity();
|
||||||
|
ruleEntity.setValue(x.getValue());
|
||||||
|
ruleEntity.setTarget(x.getTarget());
|
||||||
|
return ruleEntity;
|
||||||
|
}).toList());
|
||||||
|
model.setVisible(visibilityEntity);
|
||||||
|
FieldDescriptionEntity fieldDescriptionEntity = new FieldDescriptionEntity();
|
||||||
|
model.setViewStyle(fieldDescriptionEntity);
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
package eu.eudat.model.mapper.publicapi;
|
||||||
|
|
||||||
|
import eu.eudat.model.descriptiontemplatedefinition.Page;
|
||||||
|
import eu.eudat.model.descriptiontemplatedefinition.Section;
|
||||||
|
import eu.eudat.model.publicapi.datasetwizard.DatasetProfilePage;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class DescriptionPageToDatasetPageMapper {
|
||||||
|
|
||||||
|
private final DescriptionSectionToDatasetSectionMapper descriptionSectionToDatasetSectionMapper;
|
||||||
|
|
||||||
|
public DescriptionPageToDatasetPageMapper(DescriptionSectionToDatasetSectionMapper descriptionSectionToDatasetSectionMapper) {
|
||||||
|
this.descriptionSectionToDatasetSectionMapper = descriptionSectionToDatasetSectionMapper;
|
||||||
|
}
|
||||||
|
|
||||||
|
public DatasetProfilePage toPublicModel(Page page, List<Section> sections) {
|
||||||
|
DatasetProfilePage model = new DatasetProfilePage();
|
||||||
|
model.setOrdinal(page.getOrdinal());
|
||||||
|
model.setTitle(page.getTitle());
|
||||||
|
model.setSections(sections.stream().map(descriptionSectionToDatasetSectionMapper::toPublicModel).toList());
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
package eu.eudat.model.mapper.publicapi;
|
||||||
|
|
||||||
|
import eu.eudat.model.publicapi.datasetwizard.Section;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class DescriptionSectionToDatasetSectionMapper {
|
||||||
|
|
||||||
|
private final DescriptionFieldSetToDatasetFieldSetMapper descriptionFieldSetToDatasetFieldSetMapper;
|
||||||
|
|
||||||
|
public DescriptionSectionToDatasetSectionMapper(DescriptionFieldSetToDatasetFieldSetMapper descriptionFieldSetToDatasetFieldSetMapper) {
|
||||||
|
this.descriptionFieldSetToDatasetFieldSetMapper = descriptionFieldSetToDatasetFieldSetMapper;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Section toPublicModel(eu.eudat.model.descriptiontemplatedefinition.Section section) {
|
||||||
|
Section model = new Section();
|
||||||
|
model.setId(section.getId());
|
||||||
|
model.setDescription(section.getDescription());
|
||||||
|
model.setOrdinal(section.getOrdinal());
|
||||||
|
model.setTitle(section.getTitle());
|
||||||
|
model.setSections(section.getSections().stream().map(this::toPublicModel).toList());
|
||||||
|
model.setMultiplicity(section.getMultiplicity());
|
||||||
|
model.setDefaultVisibility(section.getDefaultVisibility());
|
||||||
|
model.setNumbering(section.getNumbering());
|
||||||
|
model.setPage(section.getPage());
|
||||||
|
model.setCompositeFields(section.getFieldSets().stream().map(descriptionFieldSetToDatasetFieldSetMapper::toPublicModel).toList());
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,28 @@
|
||||||
|
package eu.eudat.model.mapper.publicapi;
|
||||||
|
|
||||||
|
import eu.eudat.model.DescriptionTemplate;
|
||||||
|
import eu.eudat.model.descriptiontemplatedefinition.Definition;
|
||||||
|
import eu.eudat.model.publicapi.datasetwizard.PagedDatasetProfile;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class DescriptionTemplateToPublicApiDatasetProfileMapper {
|
||||||
|
|
||||||
|
private final DescriptionPageToDatasetPageMapper descriptionPageToDatasetPageMapper;
|
||||||
|
|
||||||
|
public DescriptionTemplateToPublicApiDatasetProfileMapper(DescriptionPageToDatasetPageMapper descriptionPageToDatasetPageMapper) {
|
||||||
|
this.descriptionPageToDatasetPageMapper = descriptionPageToDatasetPageMapper;
|
||||||
|
}
|
||||||
|
|
||||||
|
public PagedDatasetProfile toPublicModel(DescriptionTemplate descriptionTemplate) {
|
||||||
|
PagedDatasetProfile model = new PagedDatasetProfile();
|
||||||
|
Definition definition = descriptionTemplate.getDefinition();
|
||||||
|
model.setStatus(descriptionTemplate.getStatus().getValue());
|
||||||
|
model.setPages(definition.getPages().stream().map(
|
||||||
|
x -> descriptionPageToDatasetPageMapper.toPublicModel(
|
||||||
|
x,
|
||||||
|
definition.getSections().stream().filter(y -> Integer.parseInt(y.getPage()) == x.getOrdinal()).toList())
|
||||||
|
).toList());
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
}
|
|
@ -16,6 +16,12 @@ import java.util.Objects;
|
||||||
@Component
|
@Component
|
||||||
public class DescriptionToPublicApiDatasetMapper {
|
public class DescriptionToPublicApiDatasetMapper {
|
||||||
|
|
||||||
|
private final DescriptionTemplateToPublicApiDatasetProfileMapper descriptionTemplateToPublicApiDatasetProfileMapper;
|
||||||
|
|
||||||
|
public DescriptionToPublicApiDatasetMapper(DescriptionTemplateToPublicApiDatasetProfileMapper descriptionTemplateToPublicApiDatasetProfileMapper) {
|
||||||
|
this.descriptionTemplateToPublicApiDatasetProfileMapper = descriptionTemplateToPublicApiDatasetProfileMapper;
|
||||||
|
}
|
||||||
|
|
||||||
public DatasetPublicModel toPublicModel(Description description, DataManagementPlanPublicListingModel dmp) {
|
public DatasetPublicModel toPublicModel(Description description, DataManagementPlanPublicListingModel dmp) {
|
||||||
DatasetPublicModel model = new DatasetPublicModel();
|
DatasetPublicModel model = new DatasetPublicModel();
|
||||||
model.setId(description.getId());
|
model.setId(description.getId());
|
||||||
|
@ -26,6 +32,7 @@ public class DescriptionToPublicApiDatasetMapper {
|
||||||
model.setStatus(description.getStatus());
|
model.setStatus(description.getStatus());
|
||||||
|
|
||||||
model.setDmp(dmp);
|
model.setDmp(dmp);
|
||||||
|
model.setDatasetProfileDefinition(descriptionTemplateToPublicApiDatasetProfileMapper.toPublicModel(description.getDescriptionTemplate()));
|
||||||
|
|
||||||
model.setProfile(DatasetProfilePublicModel.fromDataModel(description.getDescriptionTemplate()));
|
model.setProfile(DatasetProfilePublicModel.fromDataModel(description.getDescriptionTemplate()));
|
||||||
model.setRegistries(description.getDescriptionReferences().stream().map(RegistryPublicModel::fromDescriptionReference).filter(Objects::nonNull).toList());
|
model.setRegistries(description.getDescriptionReferences().stream().map(RegistryPublicModel::fromDescriptionReference).filter(Objects::nonNull).toList());
|
||||||
|
|
|
@ -10,6 +10,8 @@ import eu.eudat.logic.services.ApiContext;
|
||||||
import eu.eudat.model.*;
|
import eu.eudat.model.*;
|
||||||
import eu.eudat.model.builder.DescriptionBuilder;
|
import eu.eudat.model.builder.DescriptionBuilder;
|
||||||
import eu.eudat.model.builder.DmpBuilder;
|
import eu.eudat.model.builder.DmpBuilder;
|
||||||
|
import eu.eudat.model.descriptiontemplatedefinition.*;
|
||||||
|
import eu.eudat.model.descriptiontemplatedefinition.fielddata.BaseFieldData;
|
||||||
import eu.eudat.model.mapper.publicapi.DescriptionToPublicApiDatasetListingMapper;
|
import eu.eudat.model.mapper.publicapi.DescriptionToPublicApiDatasetListingMapper;
|
||||||
import eu.eudat.model.mapper.publicapi.DescriptionToPublicApiDatasetMapper;
|
import eu.eudat.model.mapper.publicapi.DescriptionToPublicApiDatasetMapper;
|
||||||
import eu.eudat.model.mapper.publicapi.DmpToPublicApiDmpListingMapper;
|
import eu.eudat.model.mapper.publicapi.DmpToPublicApiDmpListingMapper;
|
||||||
|
@ -146,12 +148,45 @@ public class PublicDatasetsDescriptionDocumentation extends BaseController {
|
||||||
Description._status,
|
Description._status,
|
||||||
String.join(".", Description._createdBy, User._id),
|
String.join(".", Description._createdBy, User._id),
|
||||||
String.join(".", Description._createdBy, User._name),
|
String.join(".", Description._createdBy, User._name),
|
||||||
String.join(".", Description._descriptionReferences, String.join(".", DescriptionReference._reference, Reference._id)),
|
String.join(".", Description._descriptionReferences, DescriptionReference._reference, Reference._id),
|
||||||
String.join(".", Description._descriptionReferences, String.join(".", DescriptionReference._reference, Reference._reference)),
|
String.join(".", Description._descriptionReferences, DescriptionReference._reference, Reference._reference),
|
||||||
String.join(".", Description._descriptionReferences, String.join(".", DescriptionReference._reference, Reference._label)),
|
String.join(".", Description._descriptionReferences, DescriptionReference._reference, Reference._label),
|
||||||
String.join(".", Description._descriptionReferences, String.join(".", DescriptionReference._reference, Reference._abbreviation)),
|
String.join(".", Description._descriptionReferences, DescriptionReference._reference, Reference._abbreviation),
|
||||||
String.join(".", Description._descriptionReferences, String.join(".", DescriptionReference._reference, Reference._description)),
|
String.join(".", Description._descriptionReferences, DescriptionReference._reference, Reference._description),
|
||||||
String.join(".", Description._descriptionReferences, String.join(".", DescriptionReference._reference, Reference._definition)),
|
String.join(".", Description._descriptionReferences, DescriptionReference._reference, Reference._definition),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._status),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._pages, Page._id),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._pages, Page._ordinal),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._pages, Page._title),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._id),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._description),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._extendedDescription),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._title),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._multiplicity),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._numbering),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._ordinal),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._sections),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._page),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._id),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._description),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._extendedDescription),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._ordinal),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._additionalInformation),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._multiplicity),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._numbering),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._title),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._id),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._numbering),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._ordinal),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._data, BaseFieldData._label),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._data, BaseFieldData._fieldType),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._schematics),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._defaultValue),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._includeInExport),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._validations),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._visibilityRules, Rule._target),
|
||||||
|
String.join(".", Description._descriptionTemplate, DescriptionTemplate._definition, Definition._sections, Section._fieldSets, FieldSet._fields, Field._visibilityRules, Rule._value),
|
||||||
Description._createdAt,
|
Description._createdAt,
|
||||||
Description._updatedAt,
|
Description._updatedAt,
|
||||||
Description._finalizedAt
|
Description._finalizedAt
|
||||||
|
|
Loading…
Reference in New Issue