Class DsDef

  • All Implemented Interfaces:
    DsTypes

    public class DsDef
    extends Object
    implements DsTypes
    Class to represent single data source definition within the RRD. Datasource definition consists of the following five elements:

    • data source name
    • data soruce type
    • heartbeat
    • minimal value
    • maximal value

    For the complete explanation of all source definition parameters, see RRDTool's rrdcreate man page.

    Author:
    Sasa Markovic
    • Field Detail

      • DS_TYPES

        public static final String[] DS_TYPES
        array of valid source types
    • Constructor Detail

      • DsDef

        public DsDef​(String dsName,
                     String dsType,
                     long heartbeat,
                     double minValue,
                     double maxValue)
              throws RrdException
        Creates new data source definition object. This object should be passed as argument to addDatasource() method of RrdDb object.

        For the complete explanation of all source definition parameters, see RRDTool's rrdcreate man page.

        IMPORTANT NOTE: If datasource name ends with '!', corresponding archives will never store NaNs as datasource values. In that case, NaN datasource values will be silently replaced with zeros by the framework.

        Parameters:
        dsName - Data source name.
        dsType - Data source type. Valid values are "COUNTER", "GAUGE", "DERIVE" and "ABSOLUTE" (these string constants are conveniently defined in the DsTypes class).
        heartbeat - Hearbeat
        minValue - Minimal value. Use Double.NaN if unknown.
        maxValue - Maximal value. Use Double.NaN if unknown.
        Throws:
        RrdException - Thrown if any parameter has illegal value.
    • Method Detail

      • getDsName

        public String getDsName()
        Returns data source name.
        Returns:
        Data source name.
      • getDsType

        public String getDsType()
        Returns source type.
        Returns:
        Source type ("COUNTER", "GAUGE", "DERIVE" or "ABSOLUTE").
      • getHeartbeat

        public long getHeartbeat()
        Returns source heartbeat.
        Returns:
        Source heartbeat.
      • getMinValue

        public double getMinValue()
        Returns minimal calculated source value.
        Returns:
        Minimal value.
      • getMaxValue

        public double getMaxValue()
        Returns maximal calculated source value.
        Returns:
        Maximal value.
      • isValidDsType

        public static boolean isValidDsType​(String dsType)
        Checks if function argument represents valid source type.
        Parameters:
        dsType - Source type to be checked.
        Returns:
        true if dsType is valid type, false otherwise.
      • dump

        public String dump()
        Returns string representing source definition (RRDTool format).
        Returns:
        String containing all data source definition parameters.
      • equals

        public boolean equals​(Object obj)
        Checks if two datasource definitions are equal. Source definitions are treated as equal if they have the same source name. It is not possible to create RRD with two equal archive definitions.
        Overrides:
        equals in class Object
        Parameters:
        obj - Archive definition to compare with.
        Returns:
        true if archive definitions are equal, false otherwise.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • exactlyEqual

        boolean exactlyEqual​(DsDef def)