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);
}