static final class ZipPosixPermissionFixer.ZipReader
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private SeekableByteChannelRecordReader |
reader |
private java.util.Map<Record,java.lang.Long> |
recordPositions |
private long |
zipSize |
Constructor and Description |
---|
ZipReader(SeekableByteChannelRecordReader reader,
long zipSize) |
Modifier and Type | Method and Description |
---|---|
private Record |
createRecord(java.lang.Class<? extends Record> recordClass,
Record delegate) |
private com.google.common.base.Optional<Record> |
doReadRecord(java.lang.Class<? extends Record> recordClass,
RecordDefinition rd,
long position) |
long |
position(Record record) |
private Record |
readBasicRecord(RecordDefinition definition,
long position) |
com.google.common.base.Optional<ZipPosixPermissionFixer.CentralDirectoryHeader> |
readCentralDirectoryHeader(long position) |
com.google.common.base.Optional<ZipPosixPermissionFixer.EndOfCentralDirectory> |
readEndOfCentralDirectory(long position) |
com.google.common.base.Optional<ZipPosixPermissionFixer.LocalFileHeader> |
readLocalFileHeader(long position)
Checks whether the archive starts with a LFH.
|
private com.google.common.base.Optional<? extends Record> |
readRecord(RecordDefinition rd,
long position) |
private com.google.common.base.Optional<Record> |
readRecordWithSignature(RecordDefinition rd,
long position) |
com.google.common.base.Optional<ZipPosixPermissionFixer.Zip64EndOfCentralDirectory> |
readZip64EndOfCentralDirectory(long position) |
com.google.common.base.Optional<ZipPosixPermissionFixer.Zip64EndOfCentralDirectoryLocator> |
readZip64EndOfCentralDirectoryLocator(long position) |
long |
zipSize() |
private final java.util.Map<Record,java.lang.Long> recordPositions
private final SeekableByteChannelRecordReader reader
private final long zipSize
public ZipReader(SeekableByteChannelRecordReader reader, long zipSize)
public long zipSize()
public com.google.common.base.Optional<ZipPosixPermissionFixer.LocalFileHeader> readLocalFileHeader(long position) throws java.io.IOException
java.io.IOException
public com.google.common.base.Optional<ZipPosixPermissionFixer.CentralDirectoryHeader> readCentralDirectoryHeader(long position) throws java.io.IOException
java.io.IOException
public com.google.common.base.Optional<ZipPosixPermissionFixer.EndOfCentralDirectory> readEndOfCentralDirectory(long position) throws java.io.IOException
java.io.IOException
public com.google.common.base.Optional<ZipPosixPermissionFixer.Zip64EndOfCentralDirectoryLocator> readZip64EndOfCentralDirectoryLocator(long position) throws java.io.IOException
java.io.IOException
public com.google.common.base.Optional<ZipPosixPermissionFixer.Zip64EndOfCentralDirectory> readZip64EndOfCentralDirectory(long position) throws java.io.IOException
java.io.IOException
private com.google.common.base.Optional<? extends Record> readRecord(RecordDefinition rd, long position) throws java.io.IOException
java.io.IOException
private com.google.common.base.Optional<Record> readRecordWithSignature(RecordDefinition rd, long position) throws java.io.IOException
java.io.IOException
private com.google.common.base.Optional<Record> doReadRecord(java.lang.Class<? extends Record> recordClass, RecordDefinition rd, long position) throws java.io.IOException
java.io.IOException
private Record createRecord(java.lang.Class<? extends Record> recordClass, Record delegate)
private Record readBasicRecord(RecordDefinition definition, long position) throws java.io.IOException
java.io.IOException
public long position(Record record)