Class RrdNioByteBufferBackend


  • public class RrdNioByteBufferBackend
    extends RrdFileBackend
    JRobin backend which is used to store RRD data to ordinary disk files by using fast java.nio.* package. This is the default backend engine since JRobin 1.4.0.
    • Constructor Detail

      • RrdNioByteBufferBackend

        protected RrdNioByteBufferBackend​(String path,
                                          boolean readOnly)
                                   throws IOException,
                                          IllegalStateException
        Creates RrdFileBackend object for the given file path, backed by java.nio.* classes.
        Parameters:
        path - Path to a file
        readOnly - True, if file should be open in a read-only mode. False otherwise
        Throws:
        IOException - Thrown in case of I/O error
        IllegalStateException
    • Method Detail

      • setLength

        protected void setLength​(long newLength)
                          throws IOException
        Sets length of the underlying RRD file. This method is called only once, immediately after a new RRD file gets created.
        Overrides:
        setLength in class RrdFileBackend
        Parameters:
        newLength - Length of the RRD file
        Throws:
        IOException - Thrown in case of I/O error.
      • write

        protected void write​(long offset,
                             byte[] b)
        Writes bytes to the underlying RRD file on the disk
        Overrides:
        write in class RrdFileBackend
        Parameters:
        offset - Starting file offset
        b - Bytes to be written.
      • read

        protected void read​(long offset,
                            byte[] b)
        Reads a number of bytes from the RRD file on the disk
        Overrides:
        read in class RrdFileBackend
        Parameters:
        offset - Starting file offset
        b - Buffer which receives bytes read from the file.