29 lines
1.3 KiB
Java
29 lines
1.3 KiB
Java
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, int page) {
|
|
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(x-> this.toPublicModel(x, page)).toList());
|
|
model.setDefaultVisibility(section.getDefaultVisibility());
|
|
model.setNumbering(section.getNumbering());
|
|
model.setPage("page_" + page);
|
|
model.setCompositeFields(section.getFieldSets().stream().map(descriptionFieldSetToDatasetFieldSetMapper::toPublicModel).toList());
|
|
return model;
|
|
}
|
|
}
|