Как добавить родительский узел в YAML с помощью snakeyaml и игнорировать нули? - PullRequest
0 голосов
/ 10 июля 2020

Я использую snakeyaml для синтаксического анализа моего объекта java в YAML.

вот мой объект java:

pubic class ClassA(){

public ClassB classb;
public ClassC classc;

}

public class ClassB() {

private String firstname;
private String lastname;

}

Here is my code to parse the object into YAML:

ClassA classa = new ClassA();
ClassB classb = new ClassB();

classb.setFirstName("TEST");
classb.setLastName("TEST");
classa.setClassA(classa);

DumpOptions options = new DumpOptions();
options.setDefaultFlowStype(DumpOptions.FlowStyle.BLOCK);
options.setPrettyFlow(true);

Representer representer = new Representer();
representer.getPropertyUtils().setSkipMissProperties(true)

Yaml yaml = new Yaml(new Constructor(), representer, options);

yaml.duml(classa, writer);

!!com.net.test.ClassA
classb:
  firstname: "TEST"
  lastname: "TEST"
classc: null


expected output:
classa:
  classb:
    firstname: "TEST"
    lastname: "TEST"

output !! com. net .test .ClassA classb: firstname: "TEST" lastname: "TEST" class c: null

ожидаемый результат: classa: classb: firstname: "TEST" lastname: "TEST"

Как достичь нижеприведенного?

  1. Я хочу добавить classa в качестве родительского элемента
  2. Пропустить нули
  3. Skip !! com. net .test.ClassA
...