static String[] getDefaultCipherSuitesForJavaVersion(String javaVersion) {
    Objects.requireNonNull(javaVersion);

    if (javaVersion.matches("\\d+")) {
      // Must be Java 9 or later
      int javaVersionInt = Integer.parseInt(javaVersion);
      if (javaVersionInt >= 11) {
        LOG.debug(
          "Using Java11+ optimized cipher suites for Java version {}, including TLSv1.3 support",
          javaVersion);
        return DEFAULT_CIPHERS_JAVA11;
      } else {
        LOG.debug("Using Java9+ optimized cipher suites for Java version {}", javaVersion);
        return DEFAULT_CIPHERS_JAVA9;
      }
    } else if (javaVersion.startsWith("1.")) {
      // Must be Java 1.8 or earlier
      LOG.debug("Using Java8 optimized cipher suites for Java version {}", javaVersion);
      return DEFAULT_CIPHERS_JAVA8;
    } else {
      LOG.debug("Could not parse java version {}, using Java8 optimized cipher suites",
        javaVersion);
      return DEFAULT_CIPHERS_JAVA8;
    }
  }
Converts a property value to a ClientAuth enum. If the input string is empty or null, returns
<code>ClientAuth.NEED</code>.
@param prop the property string.
@return the ClientAuth.
@throws IllegalArgumentException if the property value is not "NONE", "WANT", "NEED", or
                                 empty/null.
hbase-common/src/main/java/org/apache/hadoop/hbase/io/crypto/tls/X509Util.java