docs: private Map<String, SortedSet<?>> getRegistryOriginal(WebRequest request, IPerson user) {
  
          /*
           * This collection of all the portlets in the portal is for the sake of
           * tracking which ones are uncategorized.
           */
          Set<IPortletDefinition> portletsNotYetCategorized =
                  new HashSet<>(portletDefinitionRegistry.getAllPortletDefinitions());
  
          // construct a new channel registry
          Map<String, SortedSet<?>> rslt = new TreeMap<>();
          SortedSet<ChannelCategoryBean> categories = new TreeSet<>();
  
          // add the root category and all its children to the registry
          final PortletCategory rootCategory = portletCategoryRegistry.getTopLevelPortletCategory();
          final Locale locale = getUserLocale(user);
          categories.add(
                  prepareCategoryBean(
                          request, rootCategory, portletsNotYetCategorized, user, locale));
  
          /*
           * uPortal historically has provided for a convention that portlets not in any category
           * may potentially be viewed by users but may not be subscribed to.
           *
           * As of uPortal 4.2, the logic below now takes any portlets the user has BROWSE access to
           * that have not already been identified as belonging to a category and adds them to a category
           * called Uncategorized.
           */
  
          EntityIdentifier ei = user.getEntityIdentifier();
          IAuthorizationPrincipal ap =
                  AuthorizationServiceFacade.instance().newPrincipal(ei.getKey(), ei.getType());
  
          // construct a new channel category bean for this category
          String uncategorizedString =
                  messageSource.getMessage(UNCATEGORIZED, new Object[] {}, locale);
          ChannelCategoryBean uncategorizedPortletsBean =
                  new ChannelCategoryBean(new PortletCategory(uncategorizedString));
          uncategorizedPortletsBean.setName(UNCATEGORIZED);
          uncategorizedPortletsBean.setDescription(
                  messageSource.getMessage(UNCATEGORIZED_DESC, new Object[] {}, locale));
  
          for (IPortletDefinition portlet : portletsNotYetCategorized) {
              if (authorizationService.canPrincipalBrowse(ap, portlet)) {
                  // construct a new channel bean from this channel
                  ChannelBean channel = getChannel(portlet, request, locale);
                  uncategorizedPortletsBean.addChannel(channel);
              }
          }
          // Add even if no portlets in category
          categories.add(uncategorizedPortletsBean);
  
          rslt.put(CATEGORIES_MAP_KEY, categories);
          return rslt;
      }