Package org.apache.cassandra.io.compress
Class CompressionMetadata.Writer
- java.lang.Object
-
- org.apache.cassandra.utils.concurrent.Transactional.AbstractTransactional
-
- org.apache.cassandra.io.compress.CompressionMetadata.Writer
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,Transactional
- Enclosing class:
- CompressionMetadata
public static class CompressionMetadata.Writer extends Transactional.AbstractTransactional implements Transactional
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.cassandra.utils.concurrent.Transactional.AbstractTransactional
Transactional.AbstractTransactional.State
-
Nested classes/interfaces inherited from interface org.apache.cassandra.utils.concurrent.Transactional
Transactional.AbstractTransactional
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addOffset(long offset)
long
chunkOffsetBy(int chunkIndex)
Get a chunk offset by it's index.protected java.lang.Throwable
doAbort(java.lang.Throwable accumulate)
protected java.lang.Throwable
doCommit(java.lang.Throwable accumulate)
protected java.lang.Throwable
doPostCleanup(java.lang.Throwable failed)
perform an exception-safe post-abort cleanupvoid
doPrepare()
Do any preparatory work prior to commit.CompressionMetadata.Writer
finalizeLength(long dataLength, int chunkCount)
CompressionMetadata
open(long dataLength, long compressedLength)
static CompressionMetadata.Writer
open(CompressionParams parameters, File file)
void
resetAndTruncate(int chunkIndex)
Reset the writer so that the next chunk offset written will be the one ofchunkIndex
.-
Methods inherited from class org.apache.cassandra.utils.concurrent.Transactional.AbstractTransactional
abort, abort, close, commit, commit, doPreCleanup, finish, prepareToCommit, state
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.cassandra.utils.concurrent.Transactional
abort, close, commit, prepareToCommit
-
-
-
-
Method Detail
-
open
public static CompressionMetadata.Writer open(CompressionParams parameters, File file)
-
addOffset
public void addOffset(long offset)
-
finalizeLength
public CompressionMetadata.Writer finalizeLength(long dataLength, int chunkCount)
-
doPrepare
public void doPrepare()
Description copied from class:Transactional.AbstractTransactional
Do any preparatory work prior to commit. This method should throw any exceptions that can be encountered during the finalization of the behaviour.- Specified by:
doPrepare
in classTransactional.AbstractTransactional
-
open
public CompressionMetadata open(long dataLength, long compressedLength)
-
chunkOffsetBy
public long chunkOffsetBy(int chunkIndex)
Get a chunk offset by it's index.- Parameters:
chunkIndex
- Index of the chunk.- Returns:
- offset of the chunk in the compressed file.
-
resetAndTruncate
public void resetAndTruncate(int chunkIndex)
Reset the writer so that the next chunk offset written will be the one ofchunkIndex
.- Parameters:
chunkIndex
- the next index to write
-
doPostCleanup
protected java.lang.Throwable doPostCleanup(java.lang.Throwable failed)
Description copied from class:Transactional.AbstractTransactional
perform an exception-safe post-abort cleanup- Overrides:
doPostCleanup
in classTransactional.AbstractTransactional
-
doCommit
protected java.lang.Throwable doCommit(java.lang.Throwable accumulate)
- Specified by:
doCommit
in classTransactional.AbstractTransactional
-
doAbort
protected java.lang.Throwable doAbort(java.lang.Throwable accumulate)
- Specified by:
doAbort
in classTransactional.AbstractTransactional
-
-