BufferedReader requestBody = new BufferedReader(new InputStreamReader(httpExchange.getRequestBody()));
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
try {
String boundary = requestBody.readLine();
if (boundary != null && boundary.startsWith("--")) {
String secondLine = requestBody.readLine();
if (secondLine != null) {
Matcher m = fileNamePattern.matcher(secondLine);
this.fileName = m.find() ? new Element(m.group(1)) : null;
requestBody.readLine();
requestBody.readLine();
String currentLine = requestBody.readLine();
String finalBoundary = boundary + "--";
while (true) {
if (currentLine != null && !currentLine.equals(finalBoundary)) {
buffer.write(currentLine.getBytes());
currentLine = requestBody.readLine();
}
else {
break;
}
}
}
}
buffer.flush();
requestBody.close();
} catch (Exception e) {
dB.echoError(e);
}
this.requestBody = buffer.toByteArray();