argos/dmp-backend/core/src/main/java/eu/eudat/service/visibility/PropertyDefinitionFieldSetI...

55 lines
1.6 KiB
Java

package eu.eudat.service.visibility;
import eu.eudat.commons.types.description.FieldEntity;
import eu.eudat.commons.types.description.PropertyDefinitionFieldSetItemEntity;
import eu.eudat.model.persist.descriptionproperties.FieldPersist;
import eu.eudat.model.persist.descriptionproperties.PropertyDefinitionFieldSetItemPersist;
import java.util.HashMap;
import java.util.Map;
public class PropertyDefinitionFieldSetItem {
private final Map<String, Field> fields;
private final Integer ordinal;
public Map<String, Field> getFields() {
return fields;
}
public Integer getOrdinal() {
return ordinal;
}
public PropertyDefinitionFieldSetItem(PropertyDefinitionFieldSetItemPersist persist){
this.ordinal = persist.getOrdinal();
if (persist.getFields() == null || persist.getFields().isEmpty()) {
this.fields = null;
return;
}
this.fields = new HashMap<>();
for (Map.Entry<String, FieldPersist> item : persist.getFields().entrySet()){
this.fields.put(item.getKey(), new Field(item.getValue()));
}
}
public PropertyDefinitionFieldSetItem(PropertyDefinitionFieldSetItemEntity entity){
this.ordinal = entity.getOrdinal();
if (entity.getFields() == null || entity.getFields().isEmpty()) {
this.fields = null;
return;
}
this.fields = new HashMap<>();
for (Map.Entry<String, FieldEntity> item : entity.getFields().entrySet()){
this.fields.put(item.getKey(), new Field(item.getValue()));
}
}
}