|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.activeio.journal.active.JournalImpl
public final class JournalImpl
A high speed Journal implementation. Inspired by the ideas of the Howl project but tailored to the needs of ActiveMQ.
This Journal provides the following features:
Field Summary | |
---|---|
static int |
DEFAULT_PACKET_SIZE
|
static int |
DEFAULT_POOL_SIZE
|
Constructor Summary | |
---|---|
JournalImpl(java.io.File logDirectory)
|
|
JournalImpl(java.io.File logDirectory,
int logFileCount,
int logFileSize)
|
|
JournalImpl(java.io.File logDirectory,
int logFileCount,
int logFileSize,
java.io.File archiveDirectory)
|
|
JournalImpl(LogFileManager logFile)
|
Method Summary | |
---|---|
void |
close()
Deprecated. @see #dispose() |
void |
dispose()
|
int |
getInitialLogFileSize()
|
java.io.File |
getLogDirectory()
|
RecordLocation |
getMark()
Obtains the mark that was set in the Journal. |
RecordLocation |
getNextRecordLocation(RecordLocation lastLocation)
Allows you to get the next RecordLocation after the location that
is in the journal. |
protected java.io.IOException |
handleExecutionException(java.util.concurrent.ExecutionException e)
|
Packet |
read(RecordLocation l)
Reads a previously written record from the journal. |
void |
setJournalEventListener(JournalEventListener eventListener)
Registers a JournalEventListener that will receive notifications from the Journal. |
void |
setMark(RecordLocation l,
boolean force)
Informs the journal that all the journal space up to the location is no longer
needed and can be reclaimed for reuse. |
java.lang.String |
toString()
|
RecordLocation |
write(Packet data,
boolean sync)
Writes a Packet of data to the journal. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final int DEFAULT_POOL_SIZE
public static final int DEFAULT_PACKET_SIZE
Constructor Detail |
---|
public JournalImpl(java.io.File logDirectory) throws java.io.IOException
java.io.IOException
public JournalImpl(java.io.File logDirectory, int logFileCount, int logFileSize) throws java.io.IOException
java.io.IOException
public JournalImpl(java.io.File logDirectory, int logFileCount, int logFileSize, java.io.File archiveDirectory) throws java.io.IOException
java.io.IOException
public JournalImpl(LogFileManager logFile)
Method Detail |
---|
public RecordLocation write(Packet data, boolean sync) throws java.io.IOException
Journal
Packet
of data to the journal. If sync
is true, then this call blocks until the data has landed on the physical
disk. Otherwise, this enqueues the write request and returns.
write
in interface Journal
sync
- - If this call should block until the data lands on disk.
java.io.IOException
- if the write failed.public void setMark(RecordLocation l, boolean force) throws InvalidRecordLocationException, java.io.IOException
Journal
location
is no longer
needed and can be reclaimed for reuse.
setMark
in interface Journal
recordLocator
- force
-
InvalidRecordLocationException
java.io.IOException
java.lang.InterruptedException
public RecordLocation getMark()
Journal
getMark
in interface Journal
Journal.read(RecordLocation location);
public RecordLocation getNextRecordLocation(RecordLocation lastLocation) throws java.io.IOException, InvalidRecordLocationException
Journal
location
that
is in the journal.
getNextRecordLocation
in interface Journal
lastLocation
-
java.io.IOException
InvalidRecordLocationException
protected java.io.IOException handleExecutionException(java.util.concurrent.ExecutionException e) throws java.io.IOException
java.io.IOException
public Packet read(RecordLocation l) throws java.io.IOException, InvalidRecordLocationException
Journal
read
in interface Journal
location
-
InvalidRecordLocationException
java.io.IOException
public void setJournalEventListener(JournalEventListener eventListener)
Journal
JournalEventListener
that will receive notifications from the Journal.
setJournalEventListener
in interface Journal
eventListener
- object that will receive journal events.public void close() throws java.io.IOException
Journal
close
in interface Journal
java.io.IOException
- if an error occurs while the journal is being closed.public void dispose()
public java.io.File getLogDirectory()
public int getInitialLogFileSize()
public java.lang.String toString()
toString
in class java.lang.Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |