private Optional getLanguageRangeWithMitigatedUnknownLanguageCode()

in locales-common/src/main/java/com/spotify/i18n/locales/common/impl/LocalesResolverBaseImpl.java [314:332]


  private Optional<LanguageRange> getLanguageRangeWithMitigatedUnknownLanguageCode(
      final LanguageRange languageRange) {
    String languageCode =
        Optional.of(languageRange.getRange())
            .filter(lr -> lr.contains("-"))
            .map(lr -> lr.substring(0, lr.indexOf("-")))
            .orElse(languageRange.getRange());

    if (!"*".equals(languageCode) && !AVAILABLE_UNICODE_LANGUAGE_CODES.contains(languageCode)) {
      return Optional.ofNullable(
              AVAILABLE_UNICODE_LOCALES_MATCHER.getBestMatch(languageRange.getRange()))
          .map(
              bestMatchingLocale ->
                  new LanguageRange(
                      bestMatchingLocale.toLanguageTag().toLowerCase(), languageRange.getWeight()));
    } else {
      return Optional.of(languageRange);
    }
  }