@VisibleForTesting
    static Set<String> supportedProtocols(SslContextBuilder builder) {
        SslContext ctx = null;
        SSLEngine engine = null;
        try {
            ctx = builder.build();
            engine = ctx.newEngine(PooledByteBufAllocator.DEFAULT);
            return ImmutableSet.copyOf(engine.getSupportedProtocols());
        } catch (Exception e) {
            throw new IllegalStateException(
                    "Failed to get the list of supported protocols from an SSLContext.", e);
        } finally {
            ReferenceCountUtil.release(engine);
            ReferenceCountUtil.release(ctx);
        }
    }
Creates a {@link SslContext} with Armeria's defaults, enabling support for HTTP/2,
TLSv1.3 (if supported), and TLSv1.2.
core/src/main/java/com/linecorp/armeria/internal/common/util/SslContextUtil.java