Package org.rrd4j.core.jrrd
Class RRDatabase
- java.lang.Object
-
- org.rrd4j.core.jrrd.RRDatabase
-
- All Implemented Interfaces:
Closeable,AutoCloseable
public class RRDatabase extends Object implements Closeable
Instances of this class model Round Robin Database (RRD) files.- Version:
- $Revision: 1.1 $
- Author:
- Ciaran Treanor
-
-
Constructor Summary
Constructors Constructor Description RRDatabase(File file)Creates a database to read from.RRDatabase(String name)Creates a database to read from.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes this database stream and releases any associated system resources.ArchivegetArchive(int index)Returns theArchiveat the specified position in this database.ArchivegetArchive(String name)getArchive.(package private) ArrayList<Archive>getArchiveList(ConsolidationFunctionType type)Iterator<Archive>getArchives()Returns an iterator over the archives in this database in proper sequence.Iterator<Archive>getArchives(ConsolidationFunctionType type)Returns an iterator over the archives in this database of the given type in proper sequence.DataChunkgetData(ConsolidationFunctionType type)Returns data from the database corresponding to the given consolidation function and a step size of 1.DataChunkgetData(ConsolidationFunctionType type, long startTime, long endTime, long stepSeconds)getData.DataChunkgetData(ConsolidationFunctionType type, Date startDate, Date endDate, long step)Returns data from the database corresponding to the given consolidation function.DataSourcegetDataSource(int index)Returns theDataSourceat the specified position in this database.Iterator<DataSource>getDataSources()Returns an iterator over the data sources in this database in proper sequence.Set<String>getDataSourcesName()getDataSourcesName.HeadergetHeader()Returns theHeaderfor this database.DategetLastUpdate()Returns the date this database was last updated.intgetNumArchives()Returns the number of archives in this database.voidprintInfo(PrintStream s)Outputs the header information of the database to the given print stream using the default number format.voidprintInfo(PrintStream s, NumberFormat numberFormat)Outputs the header information of the database to the given print stream using the given number format.StringtoString()Returns a summary the contents of this database.voidtoXml(PrintStream s)Outputs the content of the database to the given print stream as a stream of XML.
-
-
-
Constructor Detail
-
RRDatabase
public RRDatabase(String name) throws IOException
Creates a database to read from.- Parameters:
name- the filename of the file to read from.- Throws:
IOException- if an I/O error occurs.
-
RRDatabase
public RRDatabase(File file) throws IOException
Creates a database to read from.- Parameters:
file- the file to read from.- Throws:
IOException- if an I/O error occurs.
-
-
Method Detail
-
getHeader
public Header getHeader()
Returns theHeaderfor this database.- Returns:
- the
Headerfor this database.
-
getDataSourcesName
public Set<String> getDataSourcesName()
getDataSourcesName.
- Returns:
- a
Setobject.
-
getLastUpdate
public Date getLastUpdate()
Returns the date this database was last updated. To convert this date to the form returned byrrdtool lastcall Date.getTime() and divide the result by 1000.- Returns:
- the date this database was last updated.
-
getDataSource
public DataSource getDataSource(int index)
Returns theDataSourceat the specified position in this database.- Parameters:
index- index ofDataSourceto return.- Returns:
- the
DataSourceat the specified position in this database
-
getDataSources
public Iterator<DataSource> getDataSources()
Returns an iterator over the data sources in this database in proper sequence.- Returns:
- an iterator over the data sources in this database in proper sequence.
-
getArchive
public Archive getArchive(int index)
Returns theArchiveat the specified position in this database.- Parameters:
index- index ofArchiveto return.- Returns:
- the
Archiveat the specified position in this database.
-
getArchives
public Iterator<Archive> getArchives()
Returns an iterator over the archives in this database in proper sequence.- Returns:
- an iterator over the archives in this database in proper sequence.
-
getNumArchives
public int getNumArchives()
Returns the number of archives in this database.- Returns:
- the number of archives in this database.
-
getArchives
public Iterator<Archive> getArchives(ConsolidationFunctionType type)
Returns an iterator over the archives in this database of the given type in proper sequence.- Parameters:
type- the consolidation function that should have been applied to the data.- Returns:
- an iterator over the archives in this database of the given type in proper sequence.
-
getArchiveList
ArrayList<Archive> getArchiveList(ConsolidationFunctionType type)
-
close
public void close() throws IOExceptionCloses this database stream and releases any associated system resources.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException- if an I/O error occurs.
-
printInfo
public void printInfo(PrintStream s)
Outputs the header information of the database to the given print stream using the default number format. The default format fordoubleis 0.0000000000E0.- Parameters:
s- the PrintStream to print the header information to.
-
getData
public DataChunk getData(ConsolidationFunctionType type) throws IOException
Returns data from the database corresponding to the given consolidation function and a step size of 1.- Parameters:
type- the consolidation function that should have been applied to the data.- Returns:
- the raw data.
- Throws:
IllegalArgumentException- if there was a problem locating a data archive with the requested consolidation function.IOException- if there was a problem reading data from the database.
-
getData
public DataChunk getData(ConsolidationFunctionType type, Date startDate, Date endDate, long step) throws IOException
Returns data from the database corresponding to the given consolidation function.- Parameters:
type- the consolidation function that should have been applied to the data.step- the step size to use.startDate- aDateobject.endDate- aDateobject.- Returns:
- the raw data.
- Throws:
IllegalArgumentException- if there was a problem locating a data archive with the requested consolidation function.IOException- if there was a problem reading data from the database.
-
getData
public DataChunk getData(ConsolidationFunctionType type, long startTime, long endTime, long stepSeconds) throws IOException
getData.
- Parameters:
type- aConsolidationFunctionTypeobject.startTime- seconds since epochendTime- seconds since epochstepSeconds- in seconds- Returns:
- a
DataChunkobject. - Throws:
IOException- if any.
-
printInfo
public void printInfo(PrintStream s, NumberFormat numberFormat)
Outputs the header information of the database to the given print stream using the given number format. The format is almost identical to that produced by rrdtool info- Parameters:
s- the PrintStream to print the header information to.numberFormat- the format to printdoubles as.
-
toXml
public void toXml(PrintStream s)
Outputs the content of the database to the given print stream as a stream of XML. The XML format is almost identical to that produced by rrdtool dump A flush is issued at the end of the XML generation, so auto flush of the PrintStream can be set to false- Parameters:
s- the PrintStream to send the XML to.
-
-