docs: @Override
      public Map<String, String> getUserInfo(PortletRequest request, PortletWindow portletWindow)
              throws PortletContainerException {
  
          Map<String, String> mergedInfo = new HashMap<String, String>();
  
          // iterate over all supplied user info services and add their
          // resulting key/value pairs to our merged map
          for (final UserInfoService service : this.userInfoServices) {
  
              Map<String, String> userInfo = service.getUserInfo(request, portletWindow);
              if (userInfo != null) {
                  for (final Map.Entry<String, String> entry : userInfo.entrySet()) {
                      final String attributeName = entry.getKey();
                      final String valueObj = entry.getValue();
                      mergedInfo.put(attributeName, valueObj);
                  }
              }
          }
  
          return mergedInfo;
      }