kopia lustrzana https://github.com/JOSM/MapWithAI
MapWithAISourceReader: Account for multiple categories
Signed-off-by: Taylor Smock <tsmock@fb.com>pull/1/head
rodzic
9f6d2e0015
commit
a4ab60cbe3
|
@ -16,6 +16,7 @@ import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
import javax.json.Json;
|
import javax.json.Json;
|
||||||
import javax.json.JsonArray;
|
import javax.json.JsonArray;
|
||||||
|
@ -116,8 +117,9 @@ public class MapWithAISourceReader implements Closeable {
|
||||||
JsonObject values = entry.getValue().asJsonObject();
|
JsonObject values = entry.getValue().asJsonObject();
|
||||||
String url = values.getString("url", "");
|
String url = values.getString("url", "");
|
||||||
String type = values.getString("type", MapWithAIType.values()[0].getDefault().getTypeString());
|
String type = values.getString("type", MapWithAIType.values()[0].getDefault().getTypeString());
|
||||||
String category = values.getString("category",
|
String[] categories = values
|
||||||
MapWithAICategory.values()[0].getDefault().getCategoryString());
|
.getString("category", MapWithAICategory.values()[0].getDefault().getCategoryString())
|
||||||
|
.split(";", -1);
|
||||||
String eula = values.getString("eula", "");
|
String eula = values.getString("eula", "");
|
||||||
boolean conflation = values.getBoolean("conflate", false);
|
boolean conflation = values.getBoolean("conflate", false);
|
||||||
String conflationUrl = values.getString("conflationUrl", null);
|
String conflationUrl = values.getString("conflationUrl", null);
|
||||||
|
@ -133,7 +135,13 @@ public class MapWithAISourceReader implements Closeable {
|
||||||
info.setConflationUrl(conflationUrl);
|
info.setConflationUrl(conflationUrl);
|
||||||
info.setSource(values.getString("source", null));
|
info.setSource(values.getString("source", null));
|
||||||
info.setAlreadyConflatedKey(alreadyConflatedKey);
|
info.setAlreadyConflatedKey(alreadyConflatedKey);
|
||||||
info.setCategory(MapWithAICategory.fromString(category));
|
if (categories.length > 0) {
|
||||||
|
info.setCategory(MapWithAICategory.fromString(categories[0]));
|
||||||
|
if (categories.length > 1) {
|
||||||
|
info.setAdditionalCategories(Stream.of(categories).skip(1).map(MapWithAICategory::fromString)
|
||||||
|
.collect(Collectors.toList()));
|
||||||
|
}
|
||||||
|
}
|
||||||
if (values.containsKey("conflation_ignore_categories")) {
|
if (values.containsKey("conflation_ignore_categories")) {
|
||||||
JsonArray ignore = values.getJsonArray("conflation_ignore_categories");
|
JsonArray ignore = values.getJsonArray("conflation_ignore_categories");
|
||||||
for (MapWithAICategory cat : ignore.getValuesAs(JsonString.class).stream().map(JsonString::getString)
|
for (MapWithAICategory cat : ignore.getValuesAs(JsonString.class).stream().map(JsonString::getString)
|
||||||
|
|
Ładowanie…
Reference in New Issue