org.jrobin.core
Class RrdSafeFileBackend
java.lang.Object
org.jrobin.core.RrdBackend
org.jrobin.core.RrdFileBackend
org.jrobin.core.RrdSafeFileBackend
public class RrdSafeFileBackend
- extends RrdFileBackend
JRobin backend which is used to store RRD data to ordinary files on the disk. This backend
is SAFE: it locks the underlying RRD file during update/fetch operations, and caches only static
parts of a RRD file in memory. Therefore, this backend is safe to be used when RRD files should
be shared between several JVMs at the same time. However, this backend is a little bit slow
since it does not use fast java.nio.* package (it's still based on the RandomAccessFile class).
Constructor Summary |
RrdSafeFileBackend(java.lang.String path,
long lockWaitTime,
long lockRetryPeriod)
Creates RrdFileBackend object for the given file path, backed by RandomAccessFile object. |
Method Summary |
void |
close()
Closes the underlying RRD file. |
static java.lang.String |
getLockInfo()
|
protected boolean |
isCachingAllowed()
Defines the caching policy for this backend. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RrdSafeFileBackend
public RrdSafeFileBackend(java.lang.String path,
long lockWaitTime,
long lockRetryPeriod)
throws java.io.IOException
- Creates RrdFileBackend object for the given file path, backed by RandomAccessFile object.
- Parameters:
path
- Path to a file
- Throws:
java.io.IOException
- Thrown in case of I/O error
close
public void close()
throws java.io.IOException
- Description copied from class:
RrdFileBackend
- Closes the underlying RRD file.
- Overrides:
close
in class RrdFileBackend
- Throws:
java.io.IOException
- Thrown in case of I/O error
isCachingAllowed
protected boolean isCachingAllowed()
- Defines the caching policy for this backend.
- Overrides:
isCachingAllowed
in class RrdBackend
- Returns:
false
getLockInfo
public static java.lang.String getLockInfo()