org.rrd4j.core
Class Archive

java.lang.Object
  extended by org.rrd4j.core.Archive

public class Archive
extends Object

Class to represent single RRD archive in a RRD with its internal state. Normally, you don't need methods to manipulate archive objects directly because Rrd4j framework does it automatically for you.

Each archive object consists of three parts: archive definition, archive state objects (one state object for each datasource) and round robin archives (one round robin for each datasource). API (read-only) is provided to access each of these parts.

Author:
Sasa Markovic

Field Summary
protected  org.rrd4j.core.RrdString consolFun
           
protected  org.rrd4j.core.RrdInt rows
           
protected  org.rrd4j.core.RrdInt steps
           
protected  org.rrd4j.core.RrdDouble xff
           
 
Method Summary
 void copyStateTo(org.rrd4j.core.RrdUpdater other)
          Copies object's internal state to another Archive object.
 ArcState getArcState(int dsIndex)
          Returns the underlying archive state object.
 long getArcStep()
          Returns archive time step in seconds.
 ConsolFun getConsolFun()
          Returns archive consolidation function ("AVERAGE", "MIN", "MAX", "FIRST", "LAST" or "TOTAL").
 long getEndTime()
          Returns current ending timestamp.
 Robin getRobin(int dsIndex)
          Returns the underlying round robin archive.
 int getRows()
          Returns the number of archive rows.
 org.rrd4j.core.RrdAllocator getRrdAllocator()
          Required to implement RrdUpdater interface.
 RrdBackend getRrdBackend()
          Returns the underlying storage (backend) object which actually performs all I/O operations.
 long getStartTime()
          Returns current starting timestamp.
 int getSteps()
          Returns the number of archive steps.
 double getXff()
          Returns archive X-files factor.
 void setXff(double xff)
          Sets X-files factor to a new value.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

consolFun

protected final org.rrd4j.core.RrdString consolFun

xff

protected final org.rrd4j.core.RrdDouble xff

steps

protected final org.rrd4j.core.RrdInt steps

rows

protected final org.rrd4j.core.RrdInt rows
Method Detail

getArcStep

public long getArcStep()
                throws IOException
Returns archive time step in seconds. Archive step is equal to RRD step multiplied with the number of archive steps.

Returns:
Archive time step in seconds
Throws:
IOException - Thrown in case of I/O error.

getConsolFun

public ConsolFun getConsolFun()
                       throws IOException
Returns archive consolidation function ("AVERAGE", "MIN", "MAX", "FIRST", "LAST" or "TOTAL").

Returns:
Archive consolidation function.
Throws:
IOException - Thrown in case of I/O error.

getXff

public double getXff()
              throws IOException
Returns archive X-files factor.

Returns:
Archive X-files factor (between 0 and 1).
Throws:
IOException - Thrown in case of I/O error.

getSteps

public int getSteps()
             throws IOException
Returns the number of archive steps.

Returns:
Number of archive steps.
Throws:
IOException - Thrown in case of I/O error.

getRows

public int getRows()
            throws IOException
Returns the number of archive rows.

Returns:
Number of archive rows.
Throws:
IOException - Thrown in case of I/O error.

getStartTime

public long getStartTime()
                  throws IOException
Returns current starting timestamp. This value is not constant.

Returns:
Timestamp corresponding to the first archive row
Throws:
IOException - Thrown in case of I/O error.

getEndTime

public long getEndTime()
                throws IOException
Returns current ending timestamp. This value is not constant.

Returns:
Timestamp corresponding to the last archive row
Throws:
IOException - Thrown in case of I/O error.

getArcState

public ArcState getArcState(int dsIndex)
Returns the underlying archive state object. Each datasource has its corresponding ArcState object (archive states are managed independently for each RRD datasource).

Parameters:
dsIndex - Datasource index
Returns:
Underlying archive state object

getRobin

public Robin getRobin(int dsIndex)
Returns the underlying round robin archive. Robins are used to store actual archive values on a per-datasource basis.

Parameters:
dsIndex - Index of the datasource in the RRD.
Returns:
Underlying round robin archive for the given datasource.

copyStateTo

public void copyStateTo(org.rrd4j.core.RrdUpdater other)
                 throws IOException
Copies object's internal state to another Archive object.

Parameters:
other - New Archive object to copy state to
Throws:
IOException - Thrown in case of I/O error

setXff

public void setXff(double xff)
            throws IOException
Sets X-files factor to a new value.

Parameters:
xff - New X-files factor value. Must be >= 0 and < 1.
Throws:
IOException - Thrown in case of I/O error

getRrdBackend

public RrdBackend getRrdBackend()
Returns the underlying storage (backend) object which actually performs all I/O operations.

Returns:
I/O backend object

getRrdAllocator

public org.rrd4j.core.RrdAllocator getRrdAllocator()
Required to implement RrdUpdater interface. You should never call this method directly.

Returns:
Allocator object


Copyright © 2011. All Rights Reserved.