@SuppressWarnings("squid:S2095") public static Multipart read(final MediaType contentType, final int contentLength, final InputStream inputStream) throws IOException { final FileUpload fileUpload = new FileUpload(); fileUpload.setFileItemFactory(new DiskFileItemFactory()); final List<FileItem> fileItems; try { fileItems = fileUpload.parseRequest(new UploadRequest(contentType, contentLength, inputStream)); } catch (final FileUploadException ex) { throw new IOException("Error parsing form: " + ex.getMessage(), ex); } final Multipart result = new Multipart(contentType); for (final FileItem fileItem : fileItems) { if (fileItem.isFormField()) { result.param(new Part(fileItem.getFieldName(), fileItem.getString())); } else { result.param(new Part(fileItem.getFieldName(), fileItem.getName(), fileItem.getInputStream())); } } return result; }