@Override public int chunkSize() { return metadata.chunkLength(); }
@Override public int chunkSize() { return metadata.chunkLength(); }
@Override public int chunkSize() { return metadata.chunkLength(); }
@Override public int chunkSize() { return metadata.chunkLength(); }
protected CompressedChunkReader(ChannelProxy channel, CompressionMetadata metadata) { super(channel, metadata.dataLength); this.metadata = metadata; assert Integer.bitCount(metadata.chunkLength()) == 1; //must be a power of two }
protected CompressedChunkReader(ChannelProxy channel, CompressionMetadata metadata) { super(channel, metadata.dataLength); this.metadata = metadata; assert Integer.bitCount(metadata.chunkLength()) == 1; //must be a power of two }
protected CompressedChunkReader(ChannelProxy channel, CompressionMetadata metadata) { super(channel, metadata.dataLength); this.metadata = metadata; assert Integer.bitCount(metadata.chunkLength()) == 1; //must be a power of two }
protected CompressedChunkReader(ChannelProxy channel, CompressionMetadata metadata) { super(channel, metadata.dataLength); this.metadata = metadata; assert Integer.bitCount(metadata.chunkLength()) == 1; //must be a power of two }
protected CompressedRandomAccessReader(String dataFilePath, CompressionMetadata metadata, PoolingSegmentedFile owner) throws FileNotFoundException { super(new File(dataFilePath), metadata.chunkLength(), metadata.compressedFileLength, owner); this.metadata = metadata; checksum = metadata.hasPostCompressionAdlerChecksums ? new Adler32() : new CRC32(); compressed = ByteBuffer.wrap(new byte[metadata.compressor().initialCompressedBufferLength(metadata.chunkLength())]); }
@Override public String toString() { return String.format("%s - chunk length %d, data length %d.", getPath(), metadata.chunkLength(), metadata.dataLength); } }
@Override public String toString() { return String.format("CompressedChunkReader.%s(%s - %s, chunk length %d, data length %d)", getClass().getSimpleName(), channel.filePath(), metadata.compressor().getClass().getSimpleName(), metadata.chunkLength(), metadata.dataLength); }
@Override public String toString() { return String.format("CompressedChunkReader.%s(%s - %s, chunk length %d, data length %d)", getClass().getSimpleName(), channel.filePath(), metadata.compressor().getClass().getSimpleName(), metadata.chunkLength(), metadata.dataLength); }
@Override public String toString() { return String.format("CompressedChunkReader.%s(%s - %s, chunk length %d, data length %d)", getClass().getSimpleName(), channel.filePath(), metadata.compressor().getClass().getSimpleName(), metadata.chunkLength(), metadata.dataLength); }
@Override public String toString() { return String.format("CompressedChunkReader.%s(%s - %s, chunk length %d, data length %d)", getClass().getSimpleName(), channel.filePath(), metadata.compressor().getClass().getSimpleName(), metadata.chunkLength(), metadata.dataLength); }
private void updateState(CompressionMetadata metadata) { long offset = 0; long lastSegmentOffset = 0; long segmentSize = 0; while (offset < metadata.dataLength) { CompressionMetadata.Chunk chunk = metadata.chunkFor(offset); //Reached a new mmap boundary if (segmentSize + chunk.length + 4 > MAX_SEGMENT_SIZE) { if (segmentSize > 0) { state.add(lastSegmentOffset, segmentSize); lastSegmentOffset += segmentSize; segmentSize = 0; } } segmentSize += chunk.length + 4; //checksum offset += metadata.chunkLength(); } if (segmentSize > 0) state.add(lastSegmentOffset, segmentSize); state.length = lastSegmentOffset + segmentSize; }
private void updateState(CompressionMetadata metadata) { long offset = 0; long lastSegmentOffset = 0; long segmentSize = 0; while (offset < metadata.dataLength) { CompressionMetadata.Chunk chunk = metadata.chunkFor(offset); //Reached a new mmap boundary if (segmentSize + chunk.length + 4 > MAX_SEGMENT_SIZE) { if (segmentSize > 0) { state.add(lastSegmentOffset, segmentSize); lastSegmentOffset += segmentSize; segmentSize = 0; } } segmentSize += chunk.length + 4; //checksum offset += metadata.chunkLength(); } if (segmentSize > 0) state.add(lastSegmentOffset, segmentSize); state.length = lastSegmentOffset + segmentSize; }
public ByteBuffer allocateBuffer() { return allocateBuffer(metadata.compressor().initialCompressedBufferLength(metadata.chunkLength())); }
public ByteBuffer allocateBuffer() { return allocateBuffer(metadata.compressor().initialCompressedBufferLength(metadata.chunkLength())); }
public ByteBuffer allocateBuffer() { return allocateBuffer(metadata.compressor().initialCompressedBufferLength(metadata.chunkLength())); }
public ByteBuffer allocateBuffer() { return allocateBuffer(metadata.compressor().initialCompressedBufferLength(metadata.chunkLength())); }