This is an automated email from the ASF dual-hosted git repository.
cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-api.git
The following commit(s) were added to refs/heads/master by this push:
new 289dee6 SLING-12857 : Allow null value for servlet wrappers
289dee6 is described below
commit 289dee6ec56e5a548b34578b75165734d8da8971
Author: Carsten Ziegeler <[email protected]>
AuthorDate: Sat Jul 12 15:22:24 2025 +0200
SLING-12857 : Allow null value for servlet wrappers
---
.../api/wrappers/JakartaToJavaxRequestWrapper.java | 11 ++++++--
.../wrappers/JakartaToJavaxResponseWrapper.java | 29 ++++++++++++--------
.../api/wrappers/JavaxToJakartaRequestWrapper.java | 11 ++++++--
.../wrappers/JavaxToJakartaResponseWrapper.java | 11 ++++++--
.../apache/sling/api/wrappers/package-info.java | 2 +-
.../sling/api/wrappers/ServletWrappersTest.java} | 32 ++++++++++++++++++++--
6 files changed, 71 insertions(+), 25 deletions(-)
diff --git
a/src/main/java/org/apache/sling/api/wrappers/JakartaToJavaxRequestWrapper.java
b/src/main/java/org/apache/sling/api/wrappers/JakartaToJavaxRequestWrapper.java
index 65108c9..fc2ce8a 100644
---
a/src/main/java/org/apache/sling/api/wrappers/JakartaToJavaxRequestWrapper.java
+++
b/src/main/java/org/apache/sling/api/wrappers/JakartaToJavaxRequestWrapper.java
@@ -56,7 +56,10 @@ public class JakartaToJavaxRequestWrapper extends
HttpServletRequestWrapper impl
* @param request Jakarta Servlet API based request object
* @return The wrapped request
*/
- public static javax.servlet.ServletRequest toJavaxRequest(final
ServletRequest request) {
+ public static @Nullable javax.servlet.ServletRequest
toJavaxRequest(@Nullable final ServletRequest request) {
+ if (request == null) {
+ return null;
+ }
if (request instanceof JavaxToJakartaRequestWrapper) {
return ((JavaxToJakartaRequestWrapper) request).getRequest();
}
@@ -69,11 +72,13 @@ public class JakartaToJavaxRequestWrapper extends
HttpServletRequestWrapper impl
return new ServletRequestWrapper(request);
}
- public static javax.servlet.http.HttpServletRequest toJavaxRequest(final
HttpServletRequest request) {
+ public static @Nullable javax.servlet.http.HttpServletRequest
toJavaxRequest(
+ @Nullable final HttpServletRequest request) {
return (javax.servlet.http.HttpServletRequest)
toJavaxRequest((ServletRequest) request);
}
- public static SlingHttpServletRequest toJavaxRequest(final
SlingJakartaHttpServletRequest request) {
+ public static @Nullable SlingHttpServletRequest toJavaxRequest(
+ @Nullable final SlingJakartaHttpServletRequest request) {
return (SlingHttpServletRequest) toJavaxRequest((ServletRequest)
request);
}
diff --git
a/src/main/java/org/apache/sling/api/wrappers/JakartaToJavaxResponseWrapper.java
b/src/main/java/org/apache/sling/api/wrappers/JakartaToJavaxResponseWrapper.java
index c5303de..17bce54 100644
---
a/src/main/java/org/apache/sling/api/wrappers/JakartaToJavaxResponseWrapper.java
+++
b/src/main/java/org/apache/sling/api/wrappers/JakartaToJavaxResponseWrapper.java
@@ -39,25 +39,30 @@ public class JakartaToJavaxResponseWrapper extends
HttpServletResponseWrapper im
* @param Response Jakarta Servlet API based response object
* @return The wrapped response
*/
- public static javax.servlet.ServletResponse toJavaxResponse(final
ServletResponse Response) {
- if (Response instanceof JavaxToJakartaResponseWrapper) {
- return ((JavaxToJakartaResponseWrapper) Response).getResponse();
+ public static @Nullable javax.servlet.ServletResponse
toJavaxResponse(@Nullable final ServletResponse response) {
+ if (response == null) {
+ return null;
}
- if (Response instanceof SlingJakartaHttpServletResponse) {
- return new
JakartaToJavaxResponseWrapper((SlingJakartaHttpServletResponse) Response);
+ if (response instanceof JavaxToJakartaResponseWrapper) {
+ return ((JavaxToJakartaResponseWrapper) response).getResponse();
}
- if (Response instanceof HttpServletResponse) {
- return new HttpServletResponseWrapper((HttpServletResponse)
Response);
+ if (response instanceof SlingJakartaHttpServletResponse) {
+ return new
JakartaToJavaxResponseWrapper((SlingJakartaHttpServletResponse) response);
}
- return new ServletResponseWrapper(Response);
+ if (response instanceof HttpServletResponse) {
+ return new HttpServletResponseWrapper((HttpServletResponse)
response);
+ }
+ return new ServletResponseWrapper(response);
}
- public static javax.servlet.http.HttpServletResponse toJavaxResponse(final
HttpServletResponse Response) {
- return (javax.servlet.http.HttpServletResponse)
toJavaxResponse((ServletResponse) Response);
+ public static @Nullable javax.servlet.http.HttpServletResponse
toJavaxResponse(
+ @Nullable final HttpServletResponse response) {
+ return (javax.servlet.http.HttpServletResponse)
toJavaxResponse((ServletResponse) response);
}
- public static SlingHttpServletResponse toJavaxResponse(final
SlingJakartaHttpServletResponse Response) {
- return (SlingHttpServletResponse) toJavaxResponse((ServletResponse)
Response);
+ public static @Nullable SlingHttpServletResponse toJavaxResponse(
+ @Nullable final SlingJakartaHttpServletResponse response) {
+ return (SlingHttpServletResponse) toJavaxResponse((ServletResponse)
response);
}
private final SlingJakartaHttpServletResponse wrappedResponse;
diff --git
a/src/main/java/org/apache/sling/api/wrappers/JavaxToJakartaRequestWrapper.java
b/src/main/java/org/apache/sling/api/wrappers/JavaxToJakartaRequestWrapper.java
index 0aca665..1b9ff92 100644
---
a/src/main/java/org/apache/sling/api/wrappers/JavaxToJakartaRequestWrapper.java
+++
b/src/main/java/org/apache/sling/api/wrappers/JavaxToJakartaRequestWrapper.java
@@ -55,7 +55,10 @@ public class JavaxToJakartaRequestWrapper extends
HttpServletRequestWrapper impl
* @param request The request object
* @return The wrapped request object
*/
- public static ServletRequest toJakartaRequest(final
javax.servlet.ServletRequest request) {
+ public static @Nullable ServletRequest toJakartaRequest(@Nullable final
javax.servlet.ServletRequest request) {
+ if (request == null) {
+ return null;
+ }
if (request instanceof JakartaToJavaxRequestWrapper) {
return ((JakartaToJavaxRequestWrapper) request).getRequest();
}
@@ -68,11 +71,13 @@ public class JavaxToJakartaRequestWrapper extends
HttpServletRequestWrapper impl
return new ServletRequestWrapper(request);
}
- public static HttpServletRequest toJakartaRequest(final
javax.servlet.http.HttpServletRequest request) {
+ public static @Nullable HttpServletRequest toJakartaRequest(
+ @Nullable final javax.servlet.http.HttpServletRequest request) {
return (HttpServletRequest)
toJakartaRequest((javax.servlet.ServletRequest) request);
}
- public static SlingJakartaHttpServletRequest toJakartaRequest(final
SlingHttpServletRequest request) {
+ public static @Nullable SlingJakartaHttpServletRequest toJakartaRequest(
+ @Nullable final SlingHttpServletRequest request) {
return (SlingJakartaHttpServletRequest)
toJakartaRequest((javax.servlet.ServletRequest) request);
}
diff --git
a/src/main/java/org/apache/sling/api/wrappers/JavaxToJakartaResponseWrapper.java
b/src/main/java/org/apache/sling/api/wrappers/JavaxToJakartaResponseWrapper.java
index 242bc9e..4dd279d 100644
---
a/src/main/java/org/apache/sling/api/wrappers/JavaxToJakartaResponseWrapper.java
+++
b/src/main/java/org/apache/sling/api/wrappers/JavaxToJakartaResponseWrapper.java
@@ -40,7 +40,10 @@ public class JavaxToJakartaResponseWrapper extends
HttpServletResponseWrapper
* @param response The response object
* @return The wrapped response object
*/
- public static ServletResponse toJakartaResponse(final
javax.servlet.ServletResponse response) {
+ public static @Nullable ServletResponse toJakartaResponse(@Nullable final
javax.servlet.ServletResponse response) {
+ if (response == null) {
+ return null;
+ }
if (response instanceof JakartaToJavaxResponseWrapper) {
return ((JakartaToJavaxResponseWrapper) response).getResponse();
}
@@ -53,11 +56,13 @@ public class JavaxToJakartaResponseWrapper extends
HttpServletResponseWrapper
return new ServletResponseWrapper(response);
}
- public static HttpServletResponse toJakartaResponse(final
javax.servlet.http.HttpServletResponse response) {
+ public static @Nullable HttpServletResponse toJakartaResponse(
+ @Nullable final javax.servlet.http.HttpServletResponse response) {
return (HttpServletResponse)
toJakartaResponse((javax.servlet.ServletResponse) response);
}
- public static SlingJakartaHttpServletResponse toJakartaResponse(final
SlingHttpServletResponse response) {
+ public static @Nullable SlingJakartaHttpServletResponse toJakartaResponse(
+ @Nullable final SlingHttpServletResponse response) {
return (SlingJakartaHttpServletResponse)
toJakartaResponse((javax.servlet.ServletResponse) response);
}
diff --git a/src/main/java/org/apache/sling/api/wrappers/package-info.java
b/src/main/java/org/apache/sling/api/wrappers/package-info.java
index 162f8cf..65cd9d1 100644
--- a/src/main/java/org/apache/sling/api/wrappers/package-info.java
+++ b/src/main/java/org/apache/sling/api/wrappers/package-info.java
@@ -17,7 +17,7 @@
* under the License.
*/
-@Version("2.9.0")
+@Version("2.10.0")
package org.apache.sling.api.wrappers;
import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/api/wrappers/package-info.java
b/src/test/java/org/apache/sling/api/wrappers/ServletWrappersTest.java
similarity index 51%
copy from src/main/java/org/apache/sling/api/wrappers/package-info.java
copy to src/test/java/org/apache/sling/api/wrappers/ServletWrappersTest.java
index 162f8cf..742bf40 100644
--- a/src/main/java/org/apache/sling/api/wrappers/package-info.java
+++ b/src/test/java/org/apache/sling/api/wrappers/ServletWrappersTest.java
@@ -16,8 +16,34 @@
* specific language governing permissions and limitations
* under the License.
*/
-
-@Version("2.9.0")
package org.apache.sling.api.wrappers;
-import org.osgi.annotation.versioning.Version;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Test related to some of the servlet wrappers in the Sling API.
+ */
+public class ServletWrappersTest {
+
+ @Test
+ public void testJakartaRequestWrappingWithNull() {
+ assertEquals(null, JakartaToJavaxRequestWrapper.toJavaxRequest(null));
+ }
+
+ @Test
+ public void testJakartaResponseWrappingWithNull() {
+ assertEquals(null,
JakartaToJavaxResponseWrapper.toJavaxResponse(null));
+ }
+
+ @Test
+ public void testJavaxRequestWrappingWithNull() {
+ assertEquals(null,
JavaxToJakartaRequestWrapper.toJakartaRequest(null));
+ }
+
+ @Test
+ public void testJavaxResponseWrappingWithNull() {
+ assertEquals(null,
JavaxToJakartaResponseWrapper.toJakartaResponse(null));
+ }
+}