Czekam na użycie niestandardowych konstrukcji z SnakeYAML i nie jestem pewien jak zaimplementować zagnieżdżanie. Używam this example jako odniesienia.Zagnieżdżone konstrukcje z SnakeYAML
w połączonej przykład, istotne YAML i Construct jest
- !circle
center: {x: 73, y: 129}
radius: 7
private class ConstructCircle extends AbstractConstruct {
@SuppressWarnings("unchecked")
public Object construct(Node node) {
MappingNode mnode = (MappingNode) node;
Map<Object, Object> values = constructMapping(mnode);
Circle circle = new Circle((Map<String, Integer>) values.get("center"), (Integer) values.get("radius"));
return circle;
}
}
Teraz zmieńmy YAML się,
- !circle
center: !point
x: 73
y: 129
radius: 7
Chciałbym użyć inny AbstractConstruct
, aby przeanalizować obiekt !point
, ale zrób to w ramach ConstructCircle
kontekst. Moje zrozumienie relacji Construct/Node
jest dość drżące i nie mam pojęcia, jak używać niestandardowego konstruktora w niestandardowym konstruktorze. Wszelkie myśli lub zasoby?