src/main/java/org/apache/sling/api/request/builder/impl/SlingHttpServletResponseResultImpl.java [170:358]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    @Override
    public void addHeader(final String name, final String value) {
        this.headerSupport.addHeader(name, value);
    }

    @Override
    public void addIntHeader(final String name, final int value) {
        this.headerSupport.addIntHeader(name, value);
    }

    @Override
    public void addDateHeader(final String name, final long date) {
        this.headerSupport.addDateHeader(name, date);
    }

    @Override
    public void setHeader(final String name, final String value) {
        this.headerSupport.setHeader(name, value);
    }

    @Override
    public void setIntHeader(final String name, final int value) {
        this.headerSupport.setIntHeader(name, value);
    }

    @Override
    public void setDateHeader(final String name, final long date) {
        this.headerSupport.setDateHeader(name, date);
    }

    @Override
    public boolean containsHeader(final String name) {
        return this.headerSupport.containsHeader(name);
    }

    @Override
    public String getHeader(final String name) {
        return this.headerSupport.getHeader(name);
    }

    @Override
    public Collection<String> getHeaders(final String name) {
        return this.headerSupport.getHeaders(name);
    }

    @Override
    public Collection<String> getHeaderNames() {
        return this.headerSupport.getHeaderNames();
    }

    private Charset getCharset() {
        if (this.characterEncoding == null) {
            return StandardCharsets.UTF_8;
        }
        return Charset.forName(this.characterEncoding);
    }

    @Override
    public PrintWriter getWriter() {
        if (this.printWriter == null) {
            this.printWriter = new PrintWriter(new OutputStreamWriter(getOutputStream(), getCharset()));
        }
        return this.printWriter;
    }

    @Override
    public ServletOutputStream getOutputStream() {
        if (this.servletOutputStream == null) {
            this.servletOutputStream = new ServletOutputStream() {
                @Override
                public void write(int b) throws IOException {
                    outputStream.write(b);
                }

                @Override
                public boolean isReady() {
                    return true;
                }

                @Override
                public void setWriteListener(final WriteListener writeListener) {
                    throw new UnsupportedOperationException();
                }
            };
        }
        return this.servletOutputStream;
    }

    @Override
    public void reset() {
        this.checkCommitted();
        this.cookies.clear();
        this.headerSupport.reset();
        this.status = HttpServletResponse.SC_OK;
        this.contentLength = -1L;
        this.statusMessage = null;
        this.resetBuffer();
    }

    @Override
    public void resetBuffer() {
        this.checkCommitted();
        this.outputStream = new ByteArrayOutputStream();
        this.servletOutputStream = null;
        this.printWriter = null;
    }

    @Override
    public int getBufferSize() {
        return this.bufferSize;
    }

    @Override
    public void setBufferSize(final int size) {
        this.bufferSize = size;
    }

    @Override
    public void flushBuffer() {
        this.isCommitted = true;
    }

    @Override
    public boolean isCommitted() {
        return isCommitted;
    }

    @Override
    public void addCookie(final Cookie cookie) {
        this.cookies.put(cookie.getName(), cookie);
    }

    @Override
    public Locale getLocale() {
        return locale;
    }

    @Override
    public void setLocale(final Locale loc) {
        this.locale = loc;
    }

    @Override
    public long getContentLength() {
        return this.contentLength;
    }

    @Override
    public String getStatusMessage() {
        return this.statusMessage;
    }

    @Override
    public Cookie getCookie(final String name) {
        return this.cookies.get(name);
    }

    @Override
    public Cookie[] getCookies() {
        if (this.cookies.isEmpty()) {
            return null;
        }
        return cookies.values().toArray(new Cookie[cookies.size()]);
    }

    @Override
    public byte[] getOutput() {
        this.isCommitted = true;
        if (printWriter != null) {
            printWriter.flush();
        }
        if (servletOutputStream != null) {
            try {
                servletOutputStream.flush();
            } catch (IOException ex) {
                // ignore
            }
        }
        return outputStream.toByteArray();
    }

    @Override
    public @NotNull String getOutputAsString() {
        this.isCommitted = true;
        return new String(getOutput(), this.getCharset());
    }

    // --- unsupported operations ---
    @Override
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



src/main/java/org/apache/sling/api/request/builder/impl/SlingJakartaHttpServletResponseResultImpl.java [159:347]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    @Override
    public void addHeader(final String name, final String value) {
        this.headerSupport.addHeader(name, value);
    }

    @Override
    public void addIntHeader(final String name, final int value) {
        this.headerSupport.addIntHeader(name, value);
    }

    @Override
    public void addDateHeader(final String name, final long date) {
        this.headerSupport.addDateHeader(name, date);
    }

    @Override
    public void setHeader(final String name, final String value) {
        this.headerSupport.setHeader(name, value);
    }

    @Override
    public void setIntHeader(final String name, final int value) {
        this.headerSupport.setIntHeader(name, value);
    }

    @Override
    public void setDateHeader(final String name, final long date) {
        this.headerSupport.setDateHeader(name, date);
    }

    @Override
    public boolean containsHeader(final String name) {
        return this.headerSupport.containsHeader(name);
    }

    @Override
    public String getHeader(final String name) {
        return this.headerSupport.getHeader(name);
    }

    @Override
    public Collection<String> getHeaders(final String name) {
        return this.headerSupport.getHeaders(name);
    }

    @Override
    public Collection<String> getHeaderNames() {
        return this.headerSupport.getHeaderNames();
    }

    private Charset getCharset() {
        if (this.characterEncoding == null) {
            return StandardCharsets.UTF_8;
        }
        return Charset.forName(this.characterEncoding);
    }

    @Override
    public PrintWriter getWriter() {
        if (this.printWriter == null) {
            this.printWriter = new PrintWriter(new OutputStreamWriter(getOutputStream(), getCharset()));
        }
        return this.printWriter;
    }

    @Override
    public ServletOutputStream getOutputStream() {
        if (this.servletOutputStream == null) {
            this.servletOutputStream = new ServletOutputStream() {
                @Override
                public void write(int b) throws IOException {
                    outputStream.write(b);
                }

                @Override
                public boolean isReady() {
                    return true;
                }

                @Override
                public void setWriteListener(final WriteListener writeListener) {
                    throw new UnsupportedOperationException();
                }
            };
        }
        return this.servletOutputStream;
    }

    @Override
    public void reset() {
        this.checkCommitted();
        this.cookies.clear();
        this.headerSupport.reset();
        this.status = HttpServletResponse.SC_OK;
        this.contentLength = -1L;
        this.statusMessage = null;
        this.resetBuffer();
    }

    @Override
    public void resetBuffer() {
        this.checkCommitted();
        this.outputStream = new ByteArrayOutputStream();
        this.servletOutputStream = null;
        this.printWriter = null;
    }

    @Override
    public int getBufferSize() {
        return this.bufferSize;
    }

    @Override
    public void setBufferSize(final int size) {
        this.bufferSize = size;
    }

    @Override
    public void flushBuffer() {
        this.isCommitted = true;
    }

    @Override
    public boolean isCommitted() {
        return isCommitted;
    }

    @Override
    public void addCookie(final Cookie cookie) {
        this.cookies.put(cookie.getName(), cookie);
    }

    @Override
    public Locale getLocale() {
        return locale;
    }

    @Override
    public void setLocale(final Locale loc) {
        this.locale = loc;
    }

    @Override
    public long getContentLength() {
        return this.contentLength;
    }

    @Override
    public String getStatusMessage() {
        return this.statusMessage;
    }

    @Override
    public Cookie getCookie(final String name) {
        return this.cookies.get(name);
    }

    @Override
    public Cookie[] getCookies() {
        if (this.cookies.isEmpty()) {
            return null;
        }
        return cookies.values().toArray(new Cookie[cookies.size()]);
    }

    @Override
    public byte[] getOutput() {
        this.isCommitted = true;
        if (printWriter != null) {
            printWriter.flush();
        }
        if (servletOutputStream != null) {
            try {
                servletOutputStream.flush();
            } catch (IOException ex) {
                // ignore
            }
        }
        return outputStream.toByteArray();
    }

    @Override
    public @NotNull String getOutputAsString() {
        this.isCommitted = true;
        return new String(getOutput(), this.getCharset());
    }

    // --- unsupported operations ---
    @Override
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



