GH-87 - Make sure actuator endpoint outputs modules in topological order.

More fundamental modules are now rendered first as we use a LinkedHashMap as primary data structure.
This commit is contained in:
Oliver Drotbohm
2023-01-05 16:24:45 +01:00
parent d8463bb84b
commit ae5475d351

View File

@@ -19,6 +19,7 @@ import static java.util.stream.Collectors.*;
import lombok.extern.slf4j.Slf4j;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
@@ -84,7 +85,8 @@ public class ApplicationModulesEndpoint {
var modules = runtime.get();
return modules.stream()
.collect(Collectors.toMap(ApplicationModule::getName, it -> toInfo(it, modules)));
.collect(
Collectors.toMap(ApplicationModule::getName, it -> toInfo(it, modules), (l, r) -> r, LinkedHashMap::new));
}
private static Map<String, Object> toInfo(ApplicationModule module, ApplicationModules modules) {