Support reading from other file systems like HDFS or S3
is there any chance that BagFile.getChannel return ReadableByteChannel instead of FileChannel to support reading bag files from HDFS or S3 direct?
Currently, we have to download the bag file to the local file system or cache it into memory, so it is an overhead, any idea that we can read from the stream directly?
This would be a little more complex than just returning a ReadableByteChannel; the bag reader expects to have access to a SeekableByteChannel interface so that it can have random access to different parts of the file in order to avoid reading the entire file into memory at once.
I'm not very familiar with using HDFS or S3, do you know if there are any examples or libraries for doing that kind of thing?