org.rrd4j.core

## Class FetchRequest

- java.lang.Object
- - org.rrd4j.core.FetchRequest

-     public class FetchRequest
      extends Object

  Class to represent fetch request. For the complete explanation of all fetch parameters consult RRDTool's rrdfetch man page.

  You cannot create `FetchRequest` directly (no public constructor is provided). Use `createFetchRequest()` method of your `RrdDb` object.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `FetchRequest(RrdDb parentDb, ConsolFun consolFun, long fetchStart, long fetchEnd, long resolution)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `dump()` Dumps the content of fetch request using the syntax of RRDTool's fetch command.
    `FetchData` | `fetchData()` Returns data from the underlying RRD and puts it in a single `FetchData` object.
    `ConsolFun` | `getConsolFun()` Returns consolidation function to be used during the fetch process.
    `long` | `getFetchEnd()` Returns ending timestamp to be used for the fetch request.
    `long` | `getFetchStart()` Returns starting timestamp to be used for the fetch request.
    `String[]` | `getFilter()` Returns request filter.
    `RrdDb` | `getParentDb()` Returns the underlying RrdDb object.
    `long` | `getResolution()` Returns fetch resolution to be used for the fetch request.
    `(package private) String` | `getRrdToolCommand()`
    `void` | `setFilter(Set<String> filter)` Sets request filter in order to fetch data only for the specified set of datasources (datasource names).
    `void` | `setFilter(String... filter)` Sets request filter in order to fetch data only for the specified array of datasources (datasource names).
    `void` | `setFilter(String filter)` Sets request filter in order to fetch data only for a single datasource (datasource name).

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### FetchRequest

          FetchRequest(RrdDb parentDb,
                       ConsolFun consolFun,
                       long fetchStart,
                       long fetchEnd,
                       long resolution)

  - ### Method Detail

    - #### dump

          public String dump()

      Dumps the content of fetch request using the syntax of RRDTool's fetch command.
      Returns:
        Fetch request dump.

    - #### fetchData

          public FetchData fetchData()
                              throws IOException

      Returns data from the underlying RRD and puts it in a single `FetchData` object.
      Returns:
        FetchData object filled with timestamps and datasource values.
      Throws:
        `IOException` - Thrown in case of I/O error.

    - #### getConsolFun

          public ConsolFun getConsolFun()

      Returns consolidation function to be used during the fetch process.
      Returns:
        Consolidation function.

    - #### getFetchEnd

          public long getFetchEnd()

      Returns ending timestamp to be used for the fetch request.
      Returns:
        Ending timestamp in seconds.

    - #### getFetchStart

          public long getFetchStart()

      Returns starting timestamp to be used for the fetch request.
      Returns:
        Starting timestamp in seconds.

    - #### getFilter

          public String[] getFilter()

      Returns request filter. See `setFilter()` for complete explanation.
      Returns:
        Request filter (array of datasource names), null if not set.

    - #### getParentDb

          public RrdDb getParentDb()

      Returns the underlying RrdDb object.
      Returns:
        RrdDb object used to create this FetchRequest object.

    - #### getResolution

          public long getResolution()

      Returns fetch resolution to be used for the fetch request.
      Returns:
        Fetch resolution in seconds.

    - #### getRrdToolCommand

          String getRrdToolCommand()

    - #### setFilter

          public void setFilter(Set<String> filter)

      Sets request filter in order to fetch data only for the specified set of datasources (datasource names). If the filter is not set (or set to null), fetched data will contain values of all datasources defined in the corresponding RRD. To fetch data only from selected datasources, specify a set of datasource names as method argument.
      Parameters:
        `filter` - Set of datasource names to fetch data for.

    - #### setFilter

          public void setFilter(String... filter)

      Sets request filter in order to fetch data only for the specified array of datasources (datasource names). If not set (or set to null), fetched data will contain values of all datasources defined in the corresponding RRD. To fetch data only from selected datasources, specify an array of datasource names as method argument.
      Parameters:
        `filter` - Array of datasources (datasource names) to fetch data from.

    - #### setFilter

          public void setFilter(String filter)

      Sets request filter in order to fetch data only for a single datasource (datasource name). If not set (or set to null), fetched data will contain values of all datasources defined in the corresponding RRD. To fetch data for a single datasource only, specify an array of datasource names as method argument.
      Parameters:
        `filter` - A single datasource (datasource name) to fetch data from.