Class RrdDb.Builder

java.lang.Object
org.rrd4j.core.RrdDb.Builder
Enclosing class:
RrdDb

public static class RrdDb.Builder extends Object
Builder for RrdDb instances.
Since:
3.5
Author:
Fabrice Bacchella
  • Method Details

    • build

      public RrdDb build() throws IOException
      Builds or imports a RrdDb instance.
      Returns:
      a new build RrdDb
      Throws:
      IOException - in case of I/O error.
      IllegalArgumentException - if the builder settings were incomplete
      IllegalStateException - if the thread was interrupted in pool usage
    • doimport

      public void doimport() throws IOException
      Import an external rrd data, import definition must have been done using setExternalPath(String) or setImporter(DataImporter).

      It can be used when it's not need to keep a reference to the rrd.

      Throws:
      IOException - in case of I/O error.
      IllegalArgumentException - if the builder settings were incomplete
      IllegalStateException - if the thread was interrupted in pool usage
    • setPath

      public RrdDb.Builder setPath(String path)
    • setPath

      public RrdDb.Builder setPath(URI uri)
    • setBackendFactory

      public RrdDb.Builder setBackendFactory(RrdBackendFactory factory)
      Parameters:
      factory - The backend factory to use for that rrd.
      Returns:
      the same builder.
    • setReadOnly

      public RrdDb.Builder setReadOnly(boolean readOnly)
      Parameters:
      readOnly - true if the rrd is to be read only
      Returns:
      the same builder.
    • readOnly

      public RrdDb.Builder readOnly()
      Set the rrd as readonly
      Returns:
      the same builder.
    • setUsePool

      public RrdDb.Builder setUsePool(boolean usePool)
    • usePool

      public RrdDb.Builder usePool()
      Activate the pool usage. If the pool is not declared using setPool(RrdDbPool), the singleton instance will be used.
      Returns:
      the same builder.
    • setPool

      public RrdDb.Builder setPool(RrdDbPool pool)
      Set the pool that will be used and set usePool to true.
      Parameters:
      pool - true if a pool is going to be used
      Returns:
      the same builder.
    • setPoolInternal

      RrdDb.Builder setPoolInternal(RrdDbPool pool)
      Internal method used to memorized the pool, without generating a loop
      Parameters:
      pool -
      Returns:
    • setExternalPath

      public RrdDb.Builder setExternalPath(String externalPath)
      Set when the builder will be used to import external data with a predefined source: XML or RRDTool.
      Parameters:
      externalPath - an URI-like indication of RRD data to import
      Returns:
      the same builder.
    • setImporter

      public RrdDb.Builder setImporter(DataImporter importer)
      Set when the builder will be used to import external data with a custom source.
      Parameters:
      importer - a custom import
      Returns:
      the same builder.
    • setRrdToolImporter

      public RrdDb.Builder setRrdToolImporter(String externalPath) throws IOException
      Set when the builder will be used to import a RRDTool file.
      Parameters:
      externalPath - the path to a RRDTool file
      Returns:
      the same builder.
      Throws:
      IOException - if the RRDTool file can‘t be read
    • setRrdDef

      public RrdDb.Builder setRrdDef(RrdDef rrdDef)
      Parameters:
      rrdDef - a RrdDef to a new rrd file.
      Returns:
      the same builder.