On Wed, 30 Jul 2025 09:32:17 GMT, Volkan Yazici <vyaz...@openjdk.org> wrote:
>> Adds a new `ofFileChannel(FileChannel channel, long offset, long length)` >> method to `java.net.HttpRequest.BodyPublishers` to provide an `HttpClient` >> publisher to upload a certain region of a file. The new publisher does not >> modify the state of the passed `FileChannel`, streams the file channel bytes >> as it publishes (i.e., avoids reading the entire file into the memory), and >> can be leveraged to implement sliced uploads. As noted in the Javadoc: >> >>> The file channel will not be closed upon completion. The caller is >>> expected to manage the life cycle of the channel, and close it >>> appropriately when not needed anymore. >> >> ### Implementation notes >> >> - `FileChannel` is preferred over `{Readable,Seekable}ByteChannel`, since >> the latter does not provide a positional read without modifying the state of >> the `FileChannel`, which is necessary to use a single `FileChannel` instance >> to implement sliced uploads. >> - `ofFileChannel(FileChannel,long,long)` is preferred over >> `ofPath(Path,long,long)` to avoid overloading the maximum file descriptor >> limit of the platform. > > Volkan Yazici has updated the pull request incrementally with one additional > commit since the last revision: > > Apply review feedback for `FileChannelPublisherTest` Hello Volkan, the test updates you have done look good to me. I'll need another day or two to go over the javadoc text and one final brief review of the test. ------------- PR Comment: https://git.openjdk.org/jdk/pull/26155#issuecomment-3150456938