src/main/java/de/uapcore/lightpit/ModuleManager.java

changeset 31
58f78f0142e8
parent 30
fb30f7b78f9b
child 33
fd8c40ff78c3
     1.1 --- a/src/main/java/de/uapcore/lightpit/ModuleManager.java	Sat May 09 14:37:15 2020 +0200
     1.2 +++ b/src/main/java/de/uapcore/lightpit/ModuleManager.java	Sat May 09 14:58:20 2020 +0200
     1.3 @@ -192,20 +192,18 @@
     1.4              try (Connection conn = db.getDataSource().get().getConnection()) {
     1.5                  final ModuleDao dao = CoreDAOFactory.getModuleDao(db.getSQLDialect());
     1.6                  final List<Module> modules = dao.listAll(conn);
     1.7 -                
     1.8 -                final List<Menu> menu = modules
     1.9 -                    .stream()
    1.10 -                    .filter((mod) -> mod.isVisible())
    1.11 -                    .collect(Collectors.mapping(
    1.12 -                            (mod) -> new Menu(
    1.13 -                                    mod.getClassname(),
    1.14 -                                    new ResourceKey(
    1.15 -                                            registeredModules.get(mod.getClassname()).bundleBaseName(),
    1.16 -                                            registeredModules.get(mod.getClassname()).menuKey()),
    1.17 -                                    registeredModules.get(mod.getClassname()).modulePath()),
    1.18 -                            Collectors.toList())
    1.19 -                    );
    1.20 -                return menu;
    1.21 +
    1.22 +                return modules
    1.23 +                        .stream()
    1.24 +                        .filter(Module::isVisible)
    1.25 +                        .sorted(new Module.PriorityComparator())
    1.26 +                        .map(mod -> new Menu(
    1.27 +                                mod.getClassname(),
    1.28 +                                new ResourceKey(
    1.29 +                                        registeredModules.get(mod.getClassname()).bundleBaseName(),
    1.30 +                                        registeredModules.get(mod.getClassname()).menuKey()),
    1.31 +                                registeredModules.get(mod.getClassname()).modulePath()))
    1.32 +                        .collect(Collectors.toList());
    1.33              } catch (SQLException ex) {
    1.34                  LOG.error("Unexpected SQLException when loading the main menu", ex);
    1.35                  return Collections.emptyList();

mercurial