Class RrdMemoryBackendFactory

  • All Implemented Interfaces:
    Closeable, AutoCloseable

    @RrdBackendAnnotation(name="MEMORY",
                          shouldValidateHeader=false)
    public class RrdMemoryBackendFactory
    extends RrdBackendFactory
    Factory class which creates actual RrdMemoryBackend objects. Rrd4j's support for in-memory RRDs is still experimental. You should know that all active RrdMemoryBackend objects are held in memory, each backend object stores RRD data in one big byte array. This implementation is therefore quite basic and memory hungry but runs very fast.

    Calling close() on RrdDb objects does not release any memory at all (RRD data must be available for the next new RrdDb(path) call. To release allocated memory, you'll have to call delete(path) method of this class.

    • Constructor Detail

      • RrdMemoryBackendFactory

        public RrdMemoryBackendFactory()
    • Method Detail

      • exists

        protected boolean exists​(String id)
        Determines if a storage with the given path already exists. Method to determine if a memory storage with the given ID already exists.
        Specified by:
        exists in class RrdBackendFactory
        Parameters:
        id - Storage path
        Returns:
        a boolean.
      • delete

        public boolean delete​(String id)
        Removes the storage with the given ID from the memory.
        Parameters:
        id - Storage ID
        Returns:
        a boolean.