RFR: 8235459: HttpRequest.BodyPublishers#ofFile(Path) assumes the default file system
Julia Boes
julia.boes at oracle.com
Fri Mar 6 13:04:54 UTC 2020
Hi Anthony,
Thanks for your comments.
> For distinguishing the non-default filesystem case, an alternative to
> using the try-catch block
> is an if-else block with the same check as is done in Path::toFile:
> if (path.getFileSystem() == FileSystems.getDefault())
Path::toFile can be overridden so the try-catch block potentially covers
more cases.
>
> When setting `length`, the catch clause can be limited to IOException,
> rather than Exception.
Good catch, changed.
>
> Maybe change the method `RuntimeException toUncheckedException(...)`
> to `void throwAsUncheckedException(...)`
> and then instead of `throw toUncheckedException(...)` use
> `throwAsUncheckedException(...)`
In that case FilePublisher::createInputStream would be missing a return
statement. The original version makes it explicit that we always throw
something - I'll stick to the original version if that's ok with you.
Webrev is updated.
Cheers,
Julia
More information about the net-dev
mailing list