@NotNull @Override public Optional<Collection<SitemapItemModelData>> getNavigationSubtree(@NotNull SitemapRequestDto requestDto) { try { List<SitemapItemModelData> models = Arrays.asList(modelServiceClient.getForType(configuration.getOnDemandApiUrl(), SitemapItemModelData[].class, requestDto.getLocalizationId(), requestDto.getSitemapId(), requestDto.getNavigationFilter().isWithAncestors(), requestDto.getNavigationFilter().getDescendantLevels())); return Optional.of(models); } catch (ItemNotFoundInModelServiceException e) { log.warn("Cannot find items for on-demand dynamic navigation from the MS for the request {}", requestDto, e); return Optional.empty(); } } }
@NotNull @Override public Optional<Collection<SitemapItemModelData>> getNavigationSubtree(@NotNull SitemapRequestDto requestDto) { try { List<SitemapItemModelData> models = Arrays.asList(modelServiceClient.getForType(configuration.getOnDemandApiUrl(), SitemapItemModelData[].class, requestDto.getLocalizationId(), requestDto.getSitemapId(), requestDto.getNavigationFilter().isWithAncestors(), requestDto.getNavigationFilter().getDescendantLevels())); return Optional.of(models); } catch (DxaItemNotFoundException e) { log.warn("Cannot find items for on-demand dynamic navigation from the MS for the request {}", requestDto, e); return Optional.empty(); } } }
if (isNullOrEmpty(request.getSitemapId())) { if(request.getNavigationFilter().getDescendantLevels() != 0) { log.trace("Sitemap ID is empty, expanding all taxonomy roots"); TaxonomyUrisHolder info = parse(request.getSitemapId(), request.getLocalizationId()); if (info == null) { throw new BadRequestException(String.format("SitemapID %s is wrong for Taxonomy navigation", request.getSitemapId()));