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

35 lines
1.4 KiB
Java

package eu.eudat.service.visibility;
import eu.eudat.commons.types.description.PropertyDefinitionEntity;
import eu.eudat.commons.types.description.PropertyDefinitionFieldSetEntity;
import eu.eudat.model.persist.descriptionproperties.PropertyDefinitionFieldSetPersist;
import eu.eudat.model.persist.descriptionproperties.PropertyDefinitionPersist;
import java.util.HashMap;
import java.util.Map;
public class PropertyDefinition {
private final Map<String, PropertyDefinitionFieldSet> fieldSets;
public Map<String, PropertyDefinitionFieldSet> getFieldSets() {
return fieldSets;
}
public PropertyDefinition(PropertyDefinitionPersist persist){
this.fieldSets = new HashMap<>();
if (persist == null || persist.getFieldSets() == null || persist.getFieldSets().isEmpty()) return;
for (Map.Entry<String, PropertyDefinitionFieldSetPersist> item : persist.getFieldSets().entrySet()){
this.fieldSets.put(item.getKey(), new PropertyDefinitionFieldSet(item.getValue()));
}
}
public PropertyDefinition(PropertyDefinitionEntity entity){
this.fieldSets = new HashMap<>();
if (entity == null || entity.getFieldSets() == null || entity.getFieldSets().isEmpty()) return;
for (Map.Entry<String, PropertyDefinitionFieldSetEntity> item : entity.getFieldSets().entrySet()){
this.fieldSets.put(item.getKey(), new PropertyDefinitionFieldSet(item.getValue()));
}
}
}