Home / Class/ Defaults Class — netty Architecture

Defaults Class — netty Architecture

Architecture documentation for the Defaults class in JdkSslContext.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  31baa1d5_fe4a_4b1a_6ffe_36f35888cf19["Defaults"]
  c1423531_50e1_4073_7612_9aad399b2c5d["JdkSslContext.java"]
  31baa1d5_fe4a_4b1a_6ffe_36f35888cf19 -->|defined in| c1423531_50e1_4073_7612_9aad399b2c5d
  91c2cc55_5baf_f1e1_9478_d01f7eefe9fd["init()"]
  31baa1d5_fe4a_4b1a_6ffe_36f35888cf19 -->|method| 91c2cc55_5baf_f1e1_9478_d01f7eefe9fd

Relationship Graph

Source Code

handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java lines 89–122

    private static final class Defaults {
        String[] defaultProtocols;
        List<String> defaultCiphers;
        List<String> defaultCiphersNonTLSv13;
        Set<String> supportedCiphers;
        Set<String> supportedCiphersNonTLSv13;
        Provider defaultProvider;

        void init() {
            SSLContext context;
            try {
                context = SSLContext.getInstance(PROTOCOL);
                context.init(null, null, null);
            } catch (Exception e) {
                throw new Error("failed to initialize the default SSL context", e);
            }

            defaultProvider = context.getProvider();

            SSLEngine engine = context.createSSLEngine();
            defaultProtocols = defaultProtocols(context, engine);

            supportedCiphers = Collections.unmodifiableSet(supportedCiphers(engine));
            defaultCiphers = Collections.unmodifiableList(defaultCiphers(engine, supportedCiphers));

            List<String> ciphersNonTLSv13 = new ArrayList<String>(defaultCiphers);
            ciphersNonTLSv13.removeAll(Arrays.asList(SslUtils.DEFAULT_TLSV13_CIPHER_SUITES));
            defaultCiphersNonTLSv13 = Collections.unmodifiableList(ciphersNonTLSv13);

            Set<String> suppertedCiphersNonTLSv13 = new LinkedHashSet<String>(supportedCiphers);
            suppertedCiphersNonTLSv13.removeAll(Arrays.asList(SslUtils.DEFAULT_TLSV13_CIPHER_SUITES));
            supportedCiphersNonTLSv13 = Collections.unmodifiableSet(suppertedCiphersNonTLSv13);
        }
    }

Frequently Asked Questions

What is the Defaults class?
Defaults is a class in the netty codebase, defined in handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java.
Where is Defaults defined?
Defaults is defined in handler/src/main/java/io/netty/handler/ssl/JdkSslContext.java at line 89.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free