/** * Get the {@link RouteData} for all registered navigation targets. * <p> * Note! This would be best to request for session scope registry as it will * then contain the actual currently visible routes from both the session * and application scopes. * <p> * Note! Size of the list is only main routes as RouteData will contain a * list of alias route registrations. * * @return list of all routes available */ public List<RouteData> getAvailableRoutes() { return handledRegistry.getRegisteredRoutes(); }
@Override public List<RouteData> getRegisteredRoutes() { List<RouteData> routes = new ArrayList<>(super.getRegisteredRoutes()); List<RouteData> registeredRoutes = parentRegistry.getRegisteredRoutes(); if (!registeredRoutes.isEmpty()) { Set<String> collect = routes.stream().map(RouteData::getUrl) .collect(Collectors.toSet()); registeredRoutes.stream() .filter(data -> !collect.contains(data.getUrl())) .forEach(routes::add); } return routes; }
private String getRoutes(BeforeEnterEvent event) { List<RouteData> routes = event.getSource().getRegistry() .getRegisteredRoutes(); return routes.stream() .sorted((route1, route2) -> route1.getUrl() .compareTo(route2.getUrl())) .map(this::routeToHtml).map(Element::outerHtml) .collect(Collectors.joining()); }
Logger logger = getLogger(); logger.debug("The application has the following routes: "); getRouteRegistry().getRegisteredRoutes().stream().map(Object::toString) .forEach(logger::debug);