Lloyd McKenzie 2024-10-02 22:40:13 -06:00
parent 53ec745184
commit 17ac205210
1 changed files with 20 additions and 4 deletions

View File

@ -833,6 +833,21 @@ public class JsonParser extends ParserBase {
} else if (!done.contains(child.getName())) {
done.add(child.getName());
List<Element> list = e.getChildrenByName(child.getName());
boolean skipList = false;
if (json.canElide() && isElideElements()) {
boolean foundNonElide = false;
for (Element listElement: list) {
if (!listElement.isElided()) {
foundNonElide = true;
break;
}
}
if (!foundNonElide) {
json.elide();
skipList = true;
}
}
if (!skipList) {
if (child.getProperty().getDefinition().hasExtension(ToolingExtensions.EXT_JSON_PROP_KEY))
composeKeyList(path, list);
else
@ -840,6 +855,7 @@ public class JsonParser extends ParserBase {
}
}
}
}
private void composeKeyList(String path, List<Element> list) throws IOException {
String keyName = list.get(0).getProperty().getDefinition().getExtensionString(ToolingExtensions.EXT_JSON_PROP_KEY);