|
Oracle® Fusion Middleware Java API Reference for Oracle Coherence 12c (12.1.3.0.0) E47890-01 |
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Object
com.tangosol.io.journal.BackupJournalRM
public class BackupJournalRM
The BackupJournalRM is a "meta" journal resource manager that is intended to be used for storage of "backup" data. This resource manager passes all writes to a RAM journal until the RAM journal hits a certain load factor, after which it passes all writes to the flash journal that the RAM journal overflows to, and also it evacuates the items stored in RAM to flash.
| Nested Class Summary | |
|---|---|
protected class |
BackupJournalRM.FlashConsumerThe FlashConsumer is a "dummy" consumer used to obtain a flash journal instance. |
protected class |
BackupJournalRM.JournalImplA Journal implementation managed by this Journal Resource Manager. |
protected class |
BackupJournalRM.RamConsumerThe RamConsumer is a pass-through consumer used to obtain a ram journal instance. |
| Constructor Summary | |
|---|---|
BackupJournalRM(RamJournalRM jrnlrmRam, double dflLoadFactorLimit)Construct a BackupJournalRM based on a RamJournalRM. |
|
| Method Summary | |
|---|---|
void |
close()Deprecated. use the Disposable interface |
JournalBinaryStore |
createBinaryStore()Create a new BinaryStore that will journal its information using this Journal Resource Manager. |
Journal |
createJournal(Journal.JournalConsumer consumer)Create a new Journal that exposes the storage capabilities of this Journal Resource Manager. |
void |
destroyBinaryStore(BinaryStore store)Lifecycle method: Destroy a BinaryStore previously created by this manager. |
void |
dispose() |
protected void |
evacuateRam()Move all data that is owned by the consumers of this BackupJournalRM from the RAM journal to the flash journal. |
FlashJournalRM |
getFlashJournalRM()Obtain the underlying FlashJournalRM. |
double |
getLoadFactorLimit()Determine the high-water mark load factor for the RAM journal above which all writes are delegated to the flash journal. |
RamJournalRM |
getRamJournalRM()Obtain the underlying RamJournalRM. |
protected BackupJournalRM.FlashConsumer |
instantiateFlashConsumer()Factory: Instantiate a FlashConsumer object. |
protected BackupJournalRM.JournalImpl |
instantiateJournal()Instantiate a JournalImpl object. |
protected BackupJournalRM.JournalImpl |
instantiateJournal(Journal jrnlRam, Journal jrnlFlash)Factory: Instantiate a JournalImpl object. |
protected BackupJournalRM.RamConsumer |
instantiateRamConsumer()Factory: Instantiate a RamConsumer object. |
boolean |
isLimitExceeded()Determine if the RAM journal load factor has been exceeded. |
protected java.util.Iterator |
iterateJournals()Iterate through the Journal instances that have been created by this Journal Resource Manager but have not been disposed of yet. |
protected void |
registerJournal(BackupJournalRM.JournalImpl journal)Register a Journal that uses this Journal Resource Manager. |
protected void |
unregisterJournal(BackupJournalRM.JournalImpl journal)Register a Journal that uses this Journal Resource Manager. |
| Constructor Detail |
|---|
public BackupJournalRM(RamJournalRM jrnlrmRam,
double dflLoadFactorLimit)
jrnlrmRam - the RamJournalRM to delegate to; note that the RamJournalRM must have a FlashJournalRM behind itdflLoadFactorLimit - the load factor of the RamJournalRM that will cause the BackupJournalRM to switch to storing data directly in the FlashJournalRM| Method Detail |
|---|
public RamJournalRM getRamJournalRM()
public FlashJournalRM getFlashJournalRM()
public double getLoadFactorLimit()
public boolean isLimitExceeded()
This method also has the side-effect of evacuating the RAM journal to the flash journal once the limit has been exceeded.
public JournalBinaryStore createBinaryStore()
createBinaryStore in interface BinaryStoreManagerpublic void destroyBinaryStore(BinaryStore store)
destroyBinaryStore in interface BinaryStoreManagerstore - a BinaryStore object previously created by this managerpublic Journal createJournal(Journal.JournalConsumer consumer)
consumer - the JournalConsumer that will be using the Journalpublic void dispose()
dispose in interface com.oracle.common.base.Disposablepublic void close()
protected void evacuateRam()
protected BackupJournalRM.JournalImpl instantiateJournal()
protected BackupJournalRM.JournalImpl instantiateJournal(Journal jrnlRam,
Journal jrnlFlash)
jrnlRam - the RAM journal to usejrnlFlash - the flash journal to useprotected void registerJournal(BackupJournalRM.JournalImpl journal)
journal - an instance of JournalImpl created by this Journal Resource Managerprotected void unregisterJournal(BackupJournalRM.JournalImpl journal)
journal - an instance of JournalImpl created by this Journal Resource Managerprotected java.util.Iterator iterateJournals()
protected BackupJournalRM.RamConsumer instantiateRamConsumer()
protected BackupJournalRM.FlashConsumer instantiateFlashConsumer()
|
Oracle® Fusion Middleware Java API Reference for Oracle Coherence 12c (12.1.3.0.0) E47890-01 |
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||