public abstract static class CompressionStrategy.Compressor extends Object
| Constructor and Description |
|---|
Compressor() |
| Modifier and Type | Method and Description |
|---|---|
ByteBuffer |
allocateInBuffer(int inputSize,
Closer closer)
Allocates a buffer that should be passed to
compress(java.nio.ByteBuffer, java.nio.ByteBuffer) method as input buffer. |
abstract ByteBuffer |
allocateOutBuffer(int inputSize,
Closer closer)
Allocates a buffer that should be passed to
compress(java.nio.ByteBuffer, java.nio.ByteBuffer) method as output buffer. |
abstract ByteBuffer |
compress(ByteBuffer in,
ByteBuffer out)
Returns a ByteBuffer with compressed contents of in between it's position and limit.
|
public ByteBuffer allocateInBuffer(int inputSize, Closer closer)
compress(java.nio.ByteBuffer, java.nio.ByteBuffer) method as input buffer. Different Compressors
require (or work more efficiently with) different kinds of buffers.
If the allocated buffer is a direct buffer, it should be registered to be freed with the given Closer.
public abstract ByteBuffer allocateOutBuffer(int inputSize, Closer closer)
compress(java.nio.ByteBuffer, java.nio.ByteBuffer) method as output buffer. Different Compressors
require (or work more efficiently with) different kinds of buffers.
Allocates a buffer that is always enough to compress a byte sequence of the given size.
If the allocated buffer is a direct buffer, it should be registered to be freed with the given Closer.
public abstract ByteBuffer compress(ByteBuffer in, ByteBuffer out)
out's position and limit
are not respected and could be discarded.
Contents of in between it's position and limit are compressed. It's contents, position and limit
shouldn't be changed in compress() method.
Copyright © 2011–2022 The Apache Software Foundation. All rights reserved.