private Category[] categories;
private Language[] languages;
private final Set<String> blacklistedEntities = new HashSet<>();
+ private final HashMap<String, String> entityAliases = new HashMap<>();
private static final String CLASS_NAME = Config.class.getName();
/**
}
private void loadEntities(JsonObject jroot) {
- JsonObject jentities;
+ JsonObject jentities, jaliases;
JsonArray jblacklist;
final String METHOD_NAME = "loadEntities";
jentities = jroot.getJsonObject("entities");
- jblacklist = jentities.getJsonArray("blacklist");
+ jblacklist = jentities.getJsonArray("blacklist");
jblacklist.forEach((jv)-> {
JsonString js;
blacklistedEntities.add(js.getString());
});
+ jaliases = jentities.getJsonObject("aliases");
+ jaliases.forEach((k, v)-> {
+ JsonArray jsources = (JsonArray)v;
+
+ jsources.forEach((jsource)-> {
+ entityAliases.put(((JsonString)jsource).getString(), k);
+ });
+ });
+
LOG.logp(Level.FINEST, CLASS_NAME, METHOD_NAME, " blacklistedEntities=" + blacklistedEntities);
+ LOG.logp(Level.FINEST, CLASS_NAME, METHOD_NAME, " entityAliases=" + entityAliases);
+ }
+
+ public String getEntityAlias(String entity) {
+ String result;
+
+ result = entityAliases.get(entity);
+
+ if (result == null)
+ return entity;
+ else
+ return result;
}
public void loadConfig() throws UnsupportedEncodingException {