| 
 | 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.AbstractJournalRM.JournalFile
com.tangosol.io.journal.AbstractJournalRM.JournalFile
       com.tangosol.io.journal.FlashJournalRM.JournalFile
com.tangosol.io.journal.FlashJournalRM.JournalFile
protected class FlashJournalRM.JournalFile
A JournalFile is created for each OS file used to store the journal contents. It is created in an initial "append" mode -- which may be interrupted from time to time by a "congested" mode if writes are falling too far behind, it then transitions to a "full" mode, and once enough of its storage has been released it transitions to an "evacuating" mode, which (once evacuated) becomes "garbage" and (upon deletion) is "discarded".
| Field Summary | |
|---|---|
| protected  byte[] | m_abOvRandom overlay data. | 
| protected  java.nio.channels.FileChannel | m_channelReadA random access FileChannel for read purposes. | 
| protected  java.nio.channels.FileChannel | m_channelWriteA FileOutputStream FileChannel for append purposes. | 
| protected  java.io.File | m_fileThe file. | 
| protected  long | m_ofNextFlushThe offset of the next Binary to clean out of the map (ie "flush" out of memory). | 
| Fields inherited from class com.tangosol.io.journal.AbstractJournalRM.JournalFile | 
|---|
| m_cbReleased, m_cbWritten, m_fNotifiedFull, m_jrnlfileNext, m_lStateOffset, m_nFile, STATE_APPENDING, STATE_CONGESTION, STATE_DISCARDED, STATE_EVACUATING, STATE_FULL, STATE_GARBAGE, STATE_MASK, STATE_RESERVED | 
| Constructor Summary | |
|---|---|
| FlashJournalRM.JournalFile(int nFile)Construct a Journal File. | |
| Method Summary | |
|---|---|
|  FlashJournalRM.Buffer | allocateBuffer()Allocate a Buffer to use with this JournalFile. | 
| protected  void | congestionCheck(int cbDelta)Check if a change to the backlog causes a change to the congestion state. | 
|  void | dispose() | 
|  long | enqueue(Binary bin)Enqueue a Binary value to be written to this file, returning a ticket, or return 0L if this file is full and the append has to occur to a new file. | 
| protected  java.lang.String | getDescription()Format the object attributes into a String for inclusion in the String returned from the AbstractJournalRM.JournalFile.toString()method. | 
|  java.io.File | getFile()Obtain the File that this JournalFile object represents. | 
|  FlashJournalRM.JournalFile | getNextJournalFile()Determine the JournalFile for the file in the journal that follows the file represented by this JournalFile. | 
|  java.nio.channels.FileChannel | getReadChannel()Obtain the FileChannel used for reading from the JournalFile. | 
|  java.nio.channels.FileChannel | getWriteChannel()Obtain the FileChannel used for appending to the JournalFile. | 
|  void | notifyWriteBehindCompleted()Called by the WriterDaemon to indicate that all the data for the JournalFile has been flushed. | 
|  void | notifyWriteOccurred(int cbWritten)Called by the WriterDaemon to indicate that more data has been flushed from the write-behind queue to disk. | 
|  Binary | read(long lTicket)Read the Binary associated with the specified ticket from the journal file. | 
|  void | release(int cbValue)Release the specified number of bytes from this journal file. | 
|  void | touch()This method is called periodically by the collector daemon to indicate that the file is still being used. | 
| Methods inherited from class com.tangosol.io.journal.AbstractJournalRM.JournalFile | 
|---|
| compareAndSetOffset, compareAndSetState, evacuate, getBytesWritten, getFileId, getOffset, getOffset, getReleased, getState, getState, isAppending, isReserved, notifyWriteCompleted, setNextJournalFile, setReserved, setState, toString | 
| Field Detail | 
|---|
protected final java.io.File m_file
protected java.nio.channels.FileChannel m_channelRead
protected final java.nio.channels.FileChannel m_channelWrite
protected final byte[] m_abOv
protected long m_ofNextFlush
| Constructor Detail | 
|---|
public FlashJournalRM.JournalFile(int nFile)
nFile - the file number in the range 0-511 (inclusive)| Method Detail | 
|---|
public long enqueue(Binary bin)
enqueue in class AbstractJournalRM.JournalFilebin - the value to append to the journal filepublic Binary read(long lTicket)
read in class AbstractJournalRM.JournalFilelTicket - a ticket previously returned from AbstractJournalRM.JournalFile.enqueue(com.tangosol.util.Binary)public void release(int cbValue)
release in class AbstractJournalRM.JournalFilecbValue - the number of bytes that are being releasedpublic FlashJournalRM.JournalFile getNextJournalFile()
getNextJournalFile in class AbstractJournalRM.JournalFilepublic java.io.File getFile()
public java.nio.channels.FileChannel getReadChannel()
public java.nio.channels.FileChannel getWriteChannel()
public void touch()
touch in class AbstractJournalRM.JournalFileprotected java.lang.String getDescription()
AbstractJournalRM.JournalFile.toString() method.getDescription in class AbstractJournalRM.JournalFilepublic void notifyWriteOccurred(int cbWritten)
cbWritten - the number of additional bytes writtenpublic void notifyWriteBehindCompleted()
public void dispose()
dispose in interface com.oracle.common.base.Disposabledispose in class AbstractJournalRM.JournalFileprotected void congestionCheck(int cbDelta)
cbDelta - number of bytes added to or removed from the backlogpublic FlashJournalRM.Buffer allocateBuffer()
| 
 | 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 | |||||||