public static ContentDisposition getContentDisposition(@NotNull InputPart part) {
        return Optional.ofNullable(part.getHeaders().getFirst("Content-Disposition"))
                       .map(ContentDisposition::parse)
                       .orElseThrow(() -> new IllegalArgumentException("Must have Content-Disposition header for part " + part));
    }
@author Marc Savy {@literal <marc@blackparrotlabs.io>}
manager/api/rest-impl/src/main/java/io/apiman/manager/api/rest/impl/util/MultipartHelper.java