in src/main/java/org/apache/sling/engine/impl/request/RequestData.java [404:429]
public static SlingJakartaHttpServletResponseImpl unwrap(SlingJakartaHttpServletResponse response) {
while (response instanceof SlingJakartaHttpServletResponseWrapper) {
response = ((SlingJakartaHttpServletResponseWrapper) response).getSlingResponse();
}
// javax to jakarta wrapper?
if (response instanceof JavaxToJakartaResponseWrapper) {
javax.servlet.ServletResponse res = ((JavaxToJakartaResponseWrapper) response).getResponse();
while (res instanceof javax.servlet.ServletResponseWrapper) {
res = ((javax.servlet.ServletResponseWrapper) res).getResponse();
}
if (res instanceof JakartaToJavaxResponseWrapper) {
final ServletResponse r = ((JakartaToJavaxResponseWrapper) res).getResponse();
if (r instanceof SlingJakartaHttpServletResponse) {
return unwrap((SlingJakartaHttpServletResponse) r);
}
throw new IllegalArgumentException("SlingJakartaHttpServletResponse not of correct type: " + r);
}
throw new IllegalArgumentException("SlingJakartaHttpServletResponse not of correct type: " + res);
}
if (response instanceof SlingJakartaHttpServletResponseImpl) {
return (SlingJakartaHttpServletResponseImpl) response;
}
throw new IllegalArgumentException("SlingJakartaHttpServletResponse not of correct type: " + response);
}