本文整理了Java中org.xerial.snappy.Snappy.compress()
方法的一些代码示例,展示了Snappy.compress()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Snappy.compress()
方法的具体详情如下:
包路径:org.xerial.snappy.Snappy
类名称:Snappy
方法名:compress
[英]Compress the input String
[中]压缩输入字符串
代码示例来源:origin: apache/incubator-pinot
@Override
public int compress(ByteBuffer inDecompressed, ByteBuffer outCompressed)
throws IOException {
return Snappy.compress(inDecompressed, outCompressed);
}
}
代码示例来源:origin: tjake/Solandra
public static byte[] compress(byte[] input) throws IOException
{
if(!useCompression)
return input;
return Snappy.compress(input);
}
代码示例来源:origin: redisson/redisson
/**
* Compress the input string using the given encoding
*
* @param s
* @param encoding
* @return the compressed data
* @throws UnsupportedEncodingException
* @throws IOException
*/
public static byte[] compress(String s, String encoding)
throws UnsupportedEncodingException, IOException
{
byte[] data = s.getBytes(encoding);
return compress(data);
}
代码示例来源:origin: redisson/redisson
/**
* Compress the input string using the given encoding
*
* @param s
* @param encoding
* @return the compressed data
* @throws UnsupportedEncodingException
* @throws IOException
*/
public static byte[] compress(String s, Charset encoding)
throws IOException
{
byte[] data = s.getBytes(encoding);
return compress(data);
}
代码示例来源:origin: redisson/redisson
/**
* Compress the input String
*
* @param s
* @return the compressed data
* @throws IOException
*/
public static byte[] compress(String s)
throws IOException
{
try {
return compress(s, "UTF-8");
}
catch (UnsupportedEncodingException e) {
throw new IllegalStateException("UTF-8 encoder is not found");
}
}
代码示例来源:origin: kairosdb/kairosdb
@Override
public void writeValueToBuffer(DataOutput buffer) throws IOException
{
byte[] compressedBytes = Snappy.compress(m_value);
buffer.writeShort(compressedBytes.length);
buffer.write(compressedBytes);
}
代码示例来源:origin: apache/avro
@Override ByteBuffer compress(ByteBuffer in) throws IOException {
ByteBuffer out =
ByteBuffer.allocate(Snappy.maxCompressedLength(in.remaining()));
int size = Snappy.compress(in.array(), in.position(), in.remaining(),
out.array(), 0);
out.limit(size);
return out;
}
代码示例来源:origin: org.apache.avro/avro
@Override
public ByteBuffer compress(ByteBuffer in) throws IOException {
ByteBuffer out =
ByteBuffer.allocate(Snappy.maxCompressedLength(in.remaining())+4);
int size = Snappy.compress(in.array(), in.position(), in.remaining(),
out.array(), 0);
crc32.reset();
crc32.update(in.array(), in.position(), in.remaining());
out.putInt(size, (int)crc32.getValue());
out.limit(size+4);
return out;
}
代码示例来源:origin: apache/avro
@Override
public ByteBuffer compress(ByteBuffer in) throws IOException {
int offset = computeOffset(in);
ByteBuffer out =
ByteBuffer.allocate(Snappy.maxCompressedLength(in.remaining())+4);
int size = Snappy.compress(in.array(), offset, in.remaining(),
out.array(), 0);
crc32.reset();
crc32.update(in.array(), offset, in.remaining());
out.putInt(size, (int)crc32.getValue());
out.limit(size+4);
return out;
}
代码示例来源:origin: redisson/redisson
Snappy.compress(directInputBuffer, outputBuffer);
代码示例来源:origin: apache/ignite
/**
* @param compactPage Compacted page.
* @param compactSize Compacted page size.
* @return Compressed page.
*/
private ByteBuffer compressPageSnappy(ByteBuffer compactPage, int compactSize) {
ByteBuffer compressedPage = compressBuf.get();
copyPageHeader(compactPage, compressedPage, compactSize);
try {
int compressedSize = Snappy.compress(compactPage, compressedPage);
assert compressedPage.limit() == PageIO.COMMON_HEADER_END + compressedSize;
}
catch (IOException e) {
throw new IgniteException("Failed to compress page with Snappy.", e);
}
compactPage.position(0);
compressedPage.position(0);
return compressedPage;
}
代码示例来源:origin: redisson/redisson
protected void compressInput()
throws IOException
{
if (inputCursor <= 0) {
return; // no need to dump
}
if (!headerWritten) {
outputCursor = writeHeader();
headerWritten = true;
}
// Compress and dump the buffer content
if (!hasSufficientOutputBufferFor(inputCursor)) {
dumpOutput();
}
writeBlockPreemble();
int compressedSize = Snappy.compress(inputBuffer, 0, inputCursor, outputBuffer, outputCursor + 4);
// Write compressed data size
writeInt(outputBuffer, outputCursor, compressedSize);
outputCursor += 4 + compressedSize;
inputCursor = 0;
}
代码示例来源:origin: org.mongodb/mongo-java-driver
@Override
public void compress(final List<ByteBuf> source, final BsonOutput target) {
int uncompressedSize = getUncompressedSize(source);
byte[] singleByteArraySource = new byte[uncompressedSize];
copy(source, singleByteArraySource);
try {
byte[] out = new byte[Snappy.maxCompressedLength(uncompressedSize)];
int compressedSize = Snappy.compress(singleByteArraySource, 0, singleByteArraySource.length, out, 0);
target.writeBytes(out, 0, compressedSize);
} catch (IOException e) {
throw new MongoInternalException("Unexpected IOException", e);
}
}
代码示例来源:origin: palantir/atlasdb
public static byte[] compressWithSnappy(byte[] bytes) {
try {
return Snappy.compress(bytes);
} catch (IOException e) {
throw Throwables.throwUncheckedException(e);
}
}
代码示例来源:origin: com.datastax.cassandra/cassandra-driver-core
private ByteBuf compressHeap(ByteBuf input) throws IOException {
int maxCompressedLength = Snappy.maxCompressedLength(input.readableBytes());
int inOffset = input.arrayOffset() + input.readerIndex();
byte[] in = input.array();
int len = input.readableBytes();
// Increase reader index.
input.readerIndex(input.writerIndex());
// Allocate a heap buffer from the ByteBufAllocator as we may use a PooledByteBufAllocator and
// so
// can eliminate the overhead of allocate a new byte[].
ByteBuf output = input.alloc().heapBuffer(maxCompressedLength);
try {
// Calculate the correct offset.
int offset = output.arrayOffset() + output.writerIndex();
byte[] out = output.array();
int written = Snappy.compress(in, inOffset, len, out, offset);
// Increase the writerIndex with the written bytes.
output.writerIndex(output.writerIndex() + written);
} catch (IOException e) {
// release output buffer so we not leak and rethrow exception.
output.release();
throw e;
}
return output;
}
代码示例来源:origin: com.datastax.cassandra/cassandra-driver-core
private ByteBuf compressDirect(ByteBuf input) throws IOException {
int maxCompressedLength = Snappy.maxCompressedLength(input.readableBytes());
// If the input is direct we will allocate a direct output buffer as well as this will allow us
// to use
// Snappy.compress(ByteBuffer, ByteBuffer) and so eliminate memory copies.
ByteBuf output = input.alloc().directBuffer(maxCompressedLength);
try {
ByteBuffer in = inputNioBuffer(input);
// Increase reader index.
input.readerIndex(input.writerIndex());
ByteBuffer out = outputNioBuffer(output);
int written = Snappy.compress(in, out);
// Set the writer index so the amount of written bytes is reflected
output.writerIndex(output.writerIndex() + written);
} catch (IOException e) {
// release output buffer so we not leak and rethrow exception.
output.release();
throw e;
}
return output;
}
代码示例来源:origin: forcedotcom/phoenix
int compressedSize = Snappy.compress(baOut.getBuffer(), 0, baOut.size(), compressed, 0);
代码示例来源:origin: org.apache.carbondata/carbondata-core
@Override public byte[] compressInt(int[] unCompInput) {
try {
return Snappy.compress(unCompInput);
} catch (IOException e) {
LOGGER.error(e.getMessage(), e);
throw new RuntimeException(e);
}
}
代码示例来源:origin: jsevellec/cassandra-unit
public void compress(ByteBuffer input, ByteBuffer output) throws IOException
{
int dlimit = output.limit();
Snappy.compress(input, output);
// Snappy doesn't match the ICompressor contract w/regards to state it leaves dest ByteBuffer's counters in
output.position(output.limit());
output.limit(dlimit);
input.position(input.limit());
}
代码示例来源:origin: org.apache.cassandra/cassandra-all
public void compress(ByteBuffer input, ByteBuffer output) throws IOException
{
int dlimit = output.limit();
Snappy.compress(input, output);
// Snappy doesn't match the ICompressor contract w/regards to state it leaves dest ByteBuffer's counters in
output.position(output.limit());
output.limit(dlimit);
input.position(input.limit());
}
内容来源于网络,如有侵权,请联系作者删除!