package eu.dnetlib.pace.config; import com.google.common.collect.Maps; import eu.dnetlib.pace.common.AbstractPaceFunctions; import eu.dnetlib.pace.model.ClusteringDef; import eu.dnetlib.pace.model.FieldDef; import eu.dnetlib.pace.tree.support.TreeNodeDef; import eu.dnetlib.pace.util.PaceResolver; import org.codehaus.jackson.annotate.JsonIgnore; import java.io.Serializable; import java.util.List; import java.util.Map; public class PaceConfig extends AbstractPaceFunctions implements Serializable { private List model; private List clustering; private Map decisionTree; private Map> blacklists; private Map> synonyms; @JsonIgnore private Map translationMap; @JsonIgnore private Map modelMap; @JsonIgnore public static PaceResolver resolver = new PaceResolver(); public PaceConfig() {} public void initModel() { modelMap = Maps.newHashMap(); for (FieldDef fd : getModel()) { modelMap.put(fd.getName(), fd); } } public void initTranslationMap(){ translationMap = Maps.newHashMap(); for (String key : synonyms.keySet()) { for (String term : synonyms.get(key)){ translationMap.put( normalize(term.toLowerCase()), key); } } } public Map translationMap(){ return translationMap; } public List getModel() { return model; } public void setModel(final List model) { this.model = model; } public List getClustering() { return clustering; } public void setClustering(final List clustering) { this.clustering = clustering; } public Map getDecisionTree() { return decisionTree; } public void setDecisionTree(Map decisionTree) { this.decisionTree = decisionTree; } public Map> getBlacklists() { return blacklists; } public void setBlacklists(final Map> blacklists) { this.blacklists = blacklists; } public Map> getSynonyms() { return synonyms; } public void setSynonyms(Map> synonyms) { this.synonyms = synonyms; } public Map getModelMap() { return modelMap; } public void setModelMap(final Map modelMap) { this.modelMap = modelMap; } }