From 6718667502149483729c9be81a6c172240a7f7b5 Mon Sep 17 00:00:00 2001 From: Jaikiran Pai Date: Thu, 9 Jan 2025 18:35:16 +0530 Subject: [PATCH 1/3] 8347348: Clarify that the HTTP server in jdk.httpserver module is not a full featured server --- src/jdk.httpserver/share/classes/module-info.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/jdk.httpserver/share/classes/module-info.java b/src/jdk.httpserver/share/classes/module-info.java index 23e04405ee863..3c1e31e66d046 100644 --- a/src/jdk.httpserver/share/classes/module-info.java +++ b/src/jdk.httpserver/share/classes/module-info.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -27,6 +27,12 @@ * Defines the JDK-specific HTTP server API, and provides the jwebserver tool * for running a minimal HTTP server. * + *

The API, SPI and the server implementation in this module is intended + * for simple usages like local testing, development, and debugging. + * Accordingly, the design and implementation of the server is explicitly + * minimal so as to avoid confusion with a full-featured and high + * performance HTTP server. + * *

The {@link com.sun.net.httpserver} package defines a high-level API for * building servers that support HTTP and HTTPS. The SimpleFileServer class * implements a simple HTTP-only file server intended for testing, development From 464f6efd391ab3b3dcc1f402630fbe5d11d8163d Mon Sep 17 00:00:00 2001 From: Jaikiran Pai Date: Fri, 10 Jan 2025 17:34:35 +0530 Subject: [PATCH 2/3] Brian's inputs --- src/jdk.httpserver/share/classes/module-info.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/jdk.httpserver/share/classes/module-info.java b/src/jdk.httpserver/share/classes/module-info.java index 3c1e31e66d046..0d602ee84333a 100644 --- a/src/jdk.httpserver/share/classes/module-info.java +++ b/src/jdk.httpserver/share/classes/module-info.java @@ -27,10 +27,10 @@ * Defines the JDK-specific HTTP server API, and provides the jwebserver tool * for running a minimal HTTP server. * - *

The API, SPI and the server implementation in this module is intended - * for simple usages like local testing, development, and debugging. - * Accordingly, the design and implementation of the server is explicitly - * minimal so as to avoid confusion with a full-featured and high + *

The API, Service Provider Interface (SPI), and the server implementation + * in this module are intended for simple usages like local testing, development, + * and debugging. Accordingly, the design and the implementation of the server are + * explicitly minimal so as to avoid confusion with a full-featured, high * performance HTTP server. * *

The {@link com.sun.net.httpserver} package defines a high-level API for @@ -40,8 +40,8 @@ * {@code jwebserver} tool and the main entry point of the module, which can * also be invoked with {@code java -m jdk.httpserver}. * - *

The {@link com.sun.net.httpserver.spi} package specifies a Service Provider - * Interface (SPI) for locating HTTP server implementations based on the + *

The {@link com.sun.net.httpserver.spi} package specifies a SPI for + * locating HTTP server implementations based on the * {@code com.sun.net.httpserver} API. *

* System properties used by the HTTP server API From f7bb835f3b949dd12278a95dcbfa8dc4a457254f Mon Sep 17 00:00:00 2001 From: Jaikiran Pai Date: Tue, 11 Feb 2025 17:16:51 +0530 Subject: [PATCH 3/3] split the doc into "@apiNote" and "@implNote" --- .../share/classes/module-info.java | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/jdk.httpserver/share/classes/module-info.java b/src/jdk.httpserver/share/classes/module-info.java index 0d602ee84333a..15e9e2cc36d1e 100644 --- a/src/jdk.httpserver/share/classes/module-info.java +++ b/src/jdk.httpserver/share/classes/module-info.java @@ -27,12 +27,6 @@ * Defines the JDK-specific HTTP server API, and provides the jwebserver tool * for running a minimal HTTP server. * - *

The API, Service Provider Interface (SPI), and the server implementation - * in this module are intended for simple usages like local testing, development, - * and debugging. Accordingly, the design and the implementation of the server are - * explicitly minimal so as to avoid confusion with a full-featured, high - * performance HTTP server. - * *

The {@link com.sun.net.httpserver} package defines a high-level API for * building servers that support HTTP and HTTPS. The SimpleFileServer class * implements a simple HTTP-only file server intended for testing, development @@ -40,8 +34,8 @@ * {@code jwebserver} tool and the main entry point of the module, which can * also be invoked with {@code java -m jdk.httpserver}. * - *

The {@link com.sun.net.httpserver.spi} package specifies a SPI for - * locating HTTP server implementations based on the + *

The {@link com.sun.net.httpserver.spi} package specifies a Service Provider + * Interface (SPI) for locating HTTP server implementations based on the * {@code com.sun.net.httpserver} API. *

* System properties used by the HTTP server API @@ -107,6 +101,14 @@ * socket option on all incoming connections. * * + * @apiNote The API and SPI in this module are designed and implemented to support a minimal + * HTTP server and simple HTTP semantics primarily. + * + * @implNote The default implementation of the HTTP server provided in this module is intended + * for simple usages like local testing, development, and debugging. Accordingly, the design + * and implementation of the server does not intend to be a full-featured, high performance + * HTTP server. + * * @toolGuide jwebserver * * @uses com.sun.net.httpserver.spi.HttpServerProvider