/** * The actual data to put into central directory. * * @return The CentralDirectoryData value */ @Override public byte[] getCentralDirectoryData() { return centralDirectoryData == null ? getLocalFileDataData() : ZipUtil.copy(centralDirectoryData); }
/** * Length of the complete extra field in the central directory. * * @return The CentralDirectoryLength value */ @Override public ZipShort getCentralDirectoryLength() { return centralDirectoryData == null ? getLocalFileDataLength() : new ZipShort(centralDirectoryData.length); }
/** * Populate data from this array as if it was in central directory data. * * @param buffer the buffer to read data from * @param offset offset into buffer to read data * @param length the length of data */ @Override public void parseFromCentralDirectoryData(final byte[] buffer, final int offset, final int length) { centralDirectoryData = new byte[length]; System.arraycopy(buffer, offset, centralDirectoryData, 0, length); if (localFileData == null) { parseFromLocalFileData(buffer, offset, length); } }
case UnparseableExtraField.READ_KEY: final UnparseableExtraFieldData field = new UnparseableExtraFieldData(); if (local) { field.parseFromLocalFileData(data, start, data.length - start); } else { field.parseFromCentralDirectoryData(data, start, data.length - start);
case UnparseableExtraField.READ_KEY: final UnparseableExtraFieldData field = new UnparseableExtraFieldData(); if (local) { field.parseFromLocalFileData(data, start, data.length - start); } else { field.parseFromCentralDirectoryData(data, start, data.length - start);
/** * The actual data to put into central directory. * * @return The CentralDirectoryData value */ @Override public byte[] getCentralDirectoryData() { return centralDirectoryData == null ? getLocalFileDataData() : ZipUtil.copy(centralDirectoryData); }
/** * Length of the complete extra field in the central directory. * * @return The CentralDirectoryLength value */ @Override public ZipShort getCentralDirectoryLength() { return centralDirectoryData == null ? getLocalFileDataLength() : new ZipShort(centralDirectoryData.length); }
/** * Populate data from this array as if it was in central directory data. * * @param buffer the buffer to read data from * @param offset offset into buffer to read data * @param length the length of data */ @Override public void parseFromCentralDirectoryData(final byte[] buffer, final int offset, final int length) { centralDirectoryData = new byte[length]; System.arraycopy(buffer, offset, centralDirectoryData, 0, length); if (localFileData == null) { parseFromLocalFileData(buffer, offset, length); } }