public void setContentType()

in aws-serverless-java-container-core/src/main/java/com/amazonaws/serverless/proxy/internal/servlet/AwsHttpServletResponse.java [350:375]


    public void setContentType(String s) {
        if (!canSetHeader()) return;
        if (s == null) {
            return;
        }
        String contentType = s;
        String charEncoding = characterEncoding;

        // TODO: Make the utilities to parse header values from the request object generic and reuse them here
        if (s.contains("charset=")) { // we have a forced charset
            int charsetIndex = s.indexOf("charset=") + 8;
            int endCharsetIndex = s.indexOf(" ", charsetIndex);
            if (endCharsetIndex == -1) {
                endCharsetIndex = s.length();
            }
            charEncoding = s.substring(charsetIndex, endCharsetIndex).toUpperCase(Locale.getDefault());
            contentType = s.split(";")[0];
        }

        if (charEncoding == null) {
            setHeader(HttpHeaders.CONTENT_TYPE, String.format("%s", contentType), true);
            return;
        }
        characterEncoding = charEncoding;
        setHeader(HttpHeaders.CONTENT_TYPE, String.format("%s; charset=%s", contentType, charEncoding), true);
    }