docs: private static Cache<String, Map<String, List<Object>>> initializeCache(final CachingPrincipalAttributesRepository repository) {
          val unit = TimeUnit.valueOf(StringUtils.defaultString(repository.getTimeUnit(), DEFAULT_CACHE_EXPIRATION_UNIT));
          return Caffeine.newBuilder()
              .initialCapacity(DEFAULT_MAXIMUM_CACHE_SIZE)
              .maximumSize(DEFAULT_MAXIMUM_CACHE_SIZE)
              .expireAfterWrite(repository.getExpiration(), unit)
              .build(s -> new TreeMap<>(String.CASE_INSENSITIVE_ORDER));
      }