Материализиране на вложени асоциативни масиви
Здравейте.
Имам въпрос относно Stream API и по-точно материализирането на вложени колекции. Доста подробно разгледах документацията на Collectors класа, но така и не успях да разбера напълно концепцията.
Това е решение на Log Parser, изпитна задача давана на изпит по Java Fundamentals. В случая съм я решил без да материализирам самия речник. Вместо това с .forEach({..}) принтирам вече филтрираната колекция.
Въпросът ми е как мога да върна резултата от сортирането и филтрирането в нов асоциативен масив  по този начин?
        TreeMap<String, TreeMap<String, ArrayList<String>>> collectedDatabase = new TreeMap<>();
        collectedDatabase = database.entrySet().stream()
                .sorted((e1, e2) ->
                        Integer.compare(
                                e2.getValue().get("Warning").size() + e2.getValue().get("Critical").size(),
                                e1.getValue().get("Warning").size() + e1.getValue().get("Critical").size()))
                .collect(...)
Ех, тая Java :D