Package org.apache.cassandra.io.compress
Class NoopCompressor
- java.lang.Object
-
- org.apache.cassandra.io.compress.NoopCompressor
-
- All Implemented Interfaces:
ICompressor
public class NoopCompressor extends java.lang.Object implements ICompressor
A Compressor which doesn't actually compress any data. This is useful for either non-compressible data (typically already compressed or encrypted) that you still want block checksums for or for fast writing. Some relevant tickets:- CASSANDRA-12682: Non compressed SSTables can silently corrupt data
- CASSANDRA-9264: Non compressed SSTables are written without checksums
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.cassandra.io.compress.ICompressor
ICompressor.Uses
-
-
Constructor Summary
Constructors Constructor Description NoopCompressor()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
compress(java.nio.ByteBuffer input, java.nio.ByteBuffer output)
Compression for ByteBuffers.static NoopCompressor
create(java.util.Map<java.lang.String,java.lang.String> ignored)
int
initialCompressedBufferLength(int chunkLength)
BufferType
preferredBufferType()
Returns the preferred (most efficient) buffer type for this compressor.java.util.Set<java.lang.String>
supportedOptions()
boolean
supports(BufferType bufferType)
Checks if the given buffer would be supported by the compressor.int
uncompress(byte[] input, int inputOffset, int inputLength, byte[] output, int outputOffset)
void
uncompress(java.nio.ByteBuffer input, java.nio.ByteBuffer output)
Decompression for DirectByteBuffers.-
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.io.compress.ICompressor
recommendedUses
-
-
-
-
Method Detail
-
create
public static NoopCompressor create(java.util.Map<java.lang.String,java.lang.String> ignored)
-
initialCompressedBufferLength
public int initialCompressedBufferLength(int chunkLength)
- Specified by:
initialCompressedBufferLength
in interfaceICompressor
-
uncompress
public int uncompress(byte[] input, int inputOffset, int inputLength, byte[] output, int outputOffset) throws java.io.IOException
- Specified by:
uncompress
in interfaceICompressor
- Throws:
java.io.IOException
-
compress
public void compress(java.nio.ByteBuffer input, java.nio.ByteBuffer output) throws java.io.IOException
Description copied from interface:ICompressor
Compression for ByteBuffers. The data between input.position() and input.limit() is compressed and placed into output starting from output.position(). Positions in both buffers are moved to reflect the bytes read and written. Limits are not changed.- Specified by:
compress
in interfaceICompressor
- Throws:
java.io.IOException
-
uncompress
public void uncompress(java.nio.ByteBuffer input, java.nio.ByteBuffer output) throws java.io.IOException
Description copied from interface:ICompressor
Decompression for DirectByteBuffers. The data between input.position() and input.limit() is uncompressed and placed into output starting from output.position(). Positions in both buffers are moved to reflect the bytes read and written. Limits are not changed.- Specified by:
uncompress
in interfaceICompressor
- Throws:
java.io.IOException
-
preferredBufferType
public BufferType preferredBufferType()
Description copied from interface:ICompressor
Returns the preferred (most efficient) buffer type for this compressor.- Specified by:
preferredBufferType
in interfaceICompressor
-
supports
public boolean supports(BufferType bufferType)
Description copied from interface:ICompressor
Checks if the given buffer would be supported by the compressor. If a type is supported, the compressor must be able to use it in combination with all other supported types. Direct and memory-mapped buffers must be supported by all compressors.- Specified by:
supports
in interfaceICompressor
-
supportedOptions
public java.util.Set<java.lang.String> supportedOptions()
- Specified by:
supportedOptions
in interfaceICompressor
-
-