in function/java11/src/main/java/com/amazon/s3objectlambda/response/ObjectResponse.java [33:54]
public void writeS3GetObjectErrorResponse(HttpResponse<InputStream> presignedResponse) {
String xmlResponse;
try {
xmlResponse = IOUtils.toString(presignedResponse.body());
} catch (IOException e) {
e.printStackTrace();
return;
}
var errorCode = getAttributeFromS3ErrorResponse(xmlResponse, "Code");
var errorMessage = getAttributeFromS3ErrorResponse(xmlResponse, "Message");
this.s3Client.writeGetObjectResponse(new WriteGetObjectResponseRequest()
.withRequestRoute(this.event.outputRoute())
.withRequestToken(this.event.outputToken())
.withErrorCode(errorCode)
.withContentLength(0L).withInputStream(new ByteArrayInputStream(new byte[0]))
.withErrorMessage(errorMessage)
.withStatusCode(presignedResponse.statusCode()));
}