## org.jrobin.core
Class DsDef

    java.lang.Object
      org.jrobin.core.DsDef

public class DsDef
extends java.lang.Object

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.

Field Summary
`static java.lang.String[]` `DS_TYPES` array of valid source types

Constructor Summary
`DsDef(java.lang.String dsName, java.lang.String dsType, long heartbeat, double minValue, double maxValue)` Creates new data source definition object.

Method Summary
`java.lang.String` `dump()` Returns string representing source definition (RRDTool format).
`boolean` `equals(java.lang.Object obj)` Checks if two datasource definitions are equal.
`java.lang.String` `getDsName()` Returns data source name.
`java.lang.String` `getDsType()` Returns source type.
`long` `getHeartbeat()` Returns source heartbeat.
`double` `getMaxValue()` Returns maximal calculated source value.
`double` `getMinValue()` Returns minimal calculated source value.
`static boolean` `isValidDsType(java.lang.String dsType)` Checks if function argument represents valid source type.

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### DS_TYPES

    public static final java.lang.String[] DS_TYPES

  array of valid source types

Constructor Detail

### DsDef

    public DsDef(java.lang.String dsName,
                 java.lang.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

Parameters:
  `dsName` - Data source name.
  `dsType` - Data source type. Valid values are "COUNTER", "GAUGE", "DERIVE" and "ABSOLUTE"
  `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 java.lang.String getDsName()

  Returns data source name.

  Returns:
    Data source name.

### getDsType

    public java.lang.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(java.lang.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 java.lang.String dump()

  Returns string representing source definition (RRDTool format).

  Returns:
    String containing all data source definition parameters.

### equals

    public boolean equals(java.lang.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.

  Parameters:
    `obj` - Archive definition to compare with.
  Returns:
    `true` if archive definitions are equal, `false` otherwise.