code: public @Nonnull ACL getACL(final @Nonnull View item) {
          return ACL.lambda((a, permission) -> {
                  ACL base = item.getOwner().getACL();
  
                  boolean hasPermission = base.hasPermission(a, permission);
                  if (!hasPermission && permission == View.READ) {
                      return base.hasPermission(a,View.CONFIGURE) || !item.getItems().isEmpty();
                  }
  
                  return hasPermission;
          });
      }
docs: Implementation can choose to provide different ACL for different views.
  This can be used as a basis for more fine-grained access control.
  
  <p>
  The default implementation makes the view visible if any of the items are visible
  or the view is configurable.
  
  @since 1.220