in src/main/java/org/apache/sling/servlets/post/AbstractPostResponse.java [282:317]
private void prepare(final HttpServletResponse response, final boolean setStatus) {
String path = getPath();
if (getProperty(PN_STATUS_CODE) == null) {
if (getError() != null) {
setStatus(500, getError().toString());
setTitle("Error while processing " + path);
} else {
if (isCreateRequest()) {
setStatus(201, "Created");
setTitle("Content created " + path);
} else {
setStatus(200, "OK");
setTitle("Content modified " + path);
}
}
}
String referer = getReferer();
if (referer == null) {
referer = "";
}
setReferer(referer);
if (setStatus) {
Object status = getProperty(PN_STATUS_CODE);
if (status instanceof Number) {
int statusCode = ((Number) status).intValue();
response.setStatus(statusCode);
// special treatment of 201/CREATED and 3xx: Requires Location
if (statusCode == HttpServletResponse.SC_CREATED || statusCode / 100 == 3) {
response.setHeader("Location", getLocation());
}
}
}
}