Interface RandomAccessData

  • All Known Implementing Classes:
    ByteArrayRandomAccessData, RandomAccessDataFile

    public interface RandomAccessData
    Interface that provides read-only random access to some underlying data. Implementations must allow concurrent reads in a thread-safe manner.
    Author:
    Phillip Webb
    • Method Detail

      • getInputStream

        InputStream getInputStream​(RandomAccessData.ResourceAccess access)
                            throws IOException
        Returns an InputStream that can be used to read the underlying data. The caller is responsible close the underlying stream.
        Parameters:
        access - hint indicating how the underlying data should be accessed
        Returns:
        a new input stream that can be used to read the underlying data.
        Throws:
        IOException - if the stream cannot be opened
      • getSubsection

        RandomAccessData getSubsection​(long offset,
                                       long length)
        Returns a new RandomAccessData for a specific subsection of this data.
        Parameters:
        offset - the offset of the subsection
        length - the length of the subsection
        Returns:
        the subsection data
      • getSize

        long getSize()
        Returns the size of the data.
        Returns:
        the size