public class MemLogStorage extends Object implements LogStorage, LogStorageStatus
Constructor and Description |
---|
MemLogStorage() |
MemLogStorage(long bucketSize,
int bucketRecordCount) |
MemLogStorage(long maxStorageSize,
long bucketSize,
int bucketRecordCount) |
Modifier and Type | Method and Description |
---|---|
BucketInfo |
addLogRecord(LogRecord record)
Persists a log record.
|
void |
close()
Closes a log storage and releases all used resources (if any).
|
long |
getConsumedVolume()
Retrieves current log storage size used by added records.
|
LogBucket |
getNextBucket()
Returns a new log bucket.
|
long |
getRecordCount()
Retrieves current number of added records.
|
LogStorageStatus |
getStatus()
Returns a log storage status.
|
void |
removeBucket(int id)
Tells a log storage to remove a log bucket.
|
void |
rollbackBucket(int id)
Tells a log storage to consider a log bucket as unused, i.e.
|
public MemLogStorage()
public MemLogStorage(long bucketSize, int bucketRecordCount)
public MemLogStorage(long maxStorageSize, long bucketSize, int bucketRecordCount)
public long getConsumedVolume()
LogStorageStatus
getConsumedVolume
in interface LogStorageStatus
public long getRecordCount()
LogStorageStatus
getRecordCount
in interface LogStorageStatus
public BucketInfo addLogRecord(LogRecord record)
LogStorage
addLogRecord
in interface LogStorage
record
- The LogRecord
object.BucketInfo
object which contains information about a bucket the log record is added.LogRecord
,
BucketInfo
public LogBucket getNextBucket()
LogStorage
getNextBucket
in interface LogStorage
LogBucket
object or null if there is no logs.LogBucket
public void removeBucket(int id)
LogStorage
removeBucket
in interface LogStorage
id
- The id of a log bucket.LogBucket
,
BucketInfo
public void rollbackBucket(int id)
LogStorage
LogStorage.getNextBucket()
.rollbackBucket
in interface LogStorage
id
- The id of a log bucket.LogBucket
,
BucketInfo
public void close()
LogStorage
close
in interface LogStorage
public LogStorageStatus getStatus()
LogStorage
getStatus
in interface LogStorage
LogStorageStatus
object.LogStorageStatus
Copyright © 2016. All rights reserved.