Разбор документа YAML с картой в корне с использованием snakeYaml

Я хочу прочитать документ YAML на карту пользовательских объектов (вместо карт, что по умолчанию делает snakeYaml). Итак, это:

19:
  typeID: 2
  limit: 300
20:
  typeID: 8
  limit: 100

Будет загружен на карту, которая выглядит следующим образом:

Map<Integer, Item>

где пункт является:

class Item {
    private Integer typeId;
    private Integer limit;
}

Я не мог найти способ сделать это с snakeYaml, и я не мог найти лучшую библиотеку для этой задачи.

В документации есть только примеры с картами / коллекциями, вложенными в другие объекты, так что вы можете сделать следующее:

    TypeDescription typeDescription = new TypeDescription(ClassContainingAMap.class);
    typeDescription.putMapPropertyType("propertyNameOfNestedMap", Integer.class, Item.class);
    Constructor constructor = new Constructor(typeDescription);
    Yaml yaml = new Yaml(constructor);
    /* creating an input stream (is) */
    ClassContainingAMap obj = (ClassContainingAMap) yaml.load(is);

Но как мне определить формат карты, когда он находится в корне документа?

Ответы на вопрос(3)

Ваш ответ на вопрос