Home / Class/ HttpHelloWorldServer Class — netty Architecture

HttpHelloWorldServer Class — netty Architecture

Architecture documentation for the HttpHelloWorldServer class in HttpHelloWorldServer.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  38799e92_faf4_5a0c_b71a_0734bd6fa449["HttpHelloWorldServer"]
  fa01d69e_a1ee_a9de_66ea_f748769923a8["HttpHelloWorldServer.java"]
  38799e92_faf4_5a0c_b71a_0734bd6fa449 -->|defined in| fa01d69e_a1ee_a9de_66ea_f748769923a8
  73a45d7f_1976_cafd_c6f0_5e71dd89b8f7["HttpHelloWorldServer()"]
  38799e92_faf4_5a0c_b71a_0734bd6fa449 -->|method| 73a45d7f_1976_cafd_c6f0_5e71dd89b8f7
  eb63378e_3c3e_61ff_5709_8868e3e65c6b["main()"]
  38799e92_faf4_5a0c_b71a_0734bd6fa449 -->|method| eb63378e_3c3e_61ff_5709_8868e3e65c6b
  db5631f3_5598_907d_84f5_4c8c386d5cd3["String()"]
  38799e92_faf4_5a0c_b71a_0734bd6fa449 -->|method| db5631f3_5598_907d_84f5_4c8c386d5cd3

Relationship Graph

Source Code

testsuite-jpms/src/main/java/io/netty/testsuite_jpms/main/HttpHelloWorldServer.java lines 78–238

public final class HttpHelloWorldServer {

    private HttpHelloWorldServer() {
    }

    public static void main(String[] args) throws Exception {

        String transport = "nio";
        boolean ssl = false;
        SslProvider sslProvider = SslProvider.JDK;
        boolean http3 = false;

        Integer port = null;
        for (int i = 0; i < args.length; i++) {
            if (args[i].equals("--help")) {
                System.out.println("usage: [options]");
                System.out.println("--ssl");
                System.out.println("--ssl-provider [ JDK | OPENSSL ]");
                System.out.println("--port <port>");
                System.out.println("--transport [ nio | kqueue | epoll | io_uring ]");
                System.out.println("--http3");
                System.exit(0);
            }
            if (args[i].equals("--ssl")) {
                ssl = true;
            }
            if (args[i].equals("--ssl-provider")) {
                if (i < args.length - 1) {
                    sslProvider = SslProvider.valueOf(args[++i]);
                } else {
                    System.exit(1);
                }
            }
            if (args[i].equals("--port")) {
                if (i < args.length - 1) {
                    port = Integer.parseInt(args[++i]);
                } else {
                    System.exit(1);
                }
            }
            if (args[i].equals("--transport")) {
                if (i < args.length - 1) {
                    transport = args[++i];
                } else {
                    System.exit(1);
                }
            }
            if (args[i].equals("--http3")) {
                http3 = true;
            }
        }

        if (port == null) {
            port = ssl ? 8443 : 8080;
        }

        IoHandlerFactory ioHandlerFactory;
        Class<? extends ServerSocketChannel> serverSocketChannelFactory;
        switch (transport) {
            case "nio":
                ioHandlerFactory = NioIoHandler.newFactory();
                serverSocketChannelFactory = NioServerSocketChannel.class;
                break;
            case "kqueue":
                ioHandlerFactory = KQueueIoHandler.newFactory();
                serverSocketChannelFactory = KQueueServerSocketChannel.class;
                break;
            case "epoll":
                ioHandlerFactory = EpollIoHandler.newFactory();
                serverSocketChannelFactory = EpollServerSocketChannel.class;
                break;
            case "io_uring":
                ioHandlerFactory = IoUringIoHandler.newFactory();
                serverSocketChannelFactory = IoUringServerSocketChannel.class;
                break;
            default:
                System.exit(1);
                return;
        }

        X509Bundle cert = new CertificateBuilder()

Frequently Asked Questions

What is the HttpHelloWorldServer class?
HttpHelloWorldServer is a class in the netty codebase, defined in testsuite-jpms/src/main/java/io/netty/testsuite_jpms/main/HttpHelloWorldServer.java.
Where is HttpHelloWorldServer defined?
HttpHelloWorldServer is defined in testsuite-jpms/src/main/java/io/netty/testsuite_jpms/main/HttpHelloWorldServer.java at line 78.

Analyze Your Own Codebase

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

Try Supermodel Free