/* * Copyright 2010 Srikanth Reddy Lingala * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package net.lingala.zip4j.model; import java.util.ArrayList; public class LocalFileHeader { private int signature; private int versionNeededToExtract; private byte[] generalPurposeFlag; private int compressionMethod; private int lastModFileTime; private long crc32; private byte[] crcBuff; private long compressedSize; private long uncompressedSize; private int fileNameLength; private int extraFieldLength; private String fileName; private byte[] extraField; private long offsetStartOfData; private boolean isEncrypted; private int encryptionMethod; private char[] password; private ArrayList extraDataRecords; private Zip64ExtendedInfo zip64ExtendedInfo; private AESExtraDataRecord aesExtraDataRecord; private boolean dataDescriptorExists; private boolean writeComprSizeInZip64ExtraRecord; private boolean fileNameUTF8Encoded; public LocalFileHeader() { encryptionMethod = -1; writeComprSizeInZip64ExtraRecord = false; crc32 = 0; uncompressedSize = 0; } public int getSignature() { return signature; } public void setSignature(int signature) { this.signature = signature; } public int getVersionNeededToExtract() { return versionNeededToExtract; } public void setVersionNeededToExtract(int versionNeededToExtract) { this.versionNeededToExtract = versionNeededToExtract; } public byte[] getGeneralPurposeFlag() { return generalPurposeFlag; } public void setGeneralPurposeFlag(byte[] generalPurposeFlag) { this.generalPurposeFlag = generalPurposeFlag; } public int getCompressionMethod() { return compressionMethod; } public void setCompressionMethod(int compressionMethod) { this.compressionMethod = compressionMethod; } public int getLastModFileTime() { return lastModFileTime; } public void setLastModFileTime(int lastModFileTime) { this.lastModFileTime = lastModFileTime; } public long getCrc32() { return crc32; } public void setCrc32(long crc32) { this.crc32 = crc32; } public long getCompressedSize() { return compressedSize; } public void setCompressedSize(long compressedSize) { this.compressedSize = compressedSize; } public long getUncompressedSize() { return uncompressedSize; } public void setUncompressedSize(long uncompressedSize) { this.uncompressedSize = uncompressedSize; } public int getFileNameLength() { return fileNameLength; } public void setFileNameLength(int fileNameLength) { this.fileNameLength = fileNameLength; } public int getExtraFieldLength() { return extraFieldLength; } public void setExtraFieldLength(int extraFieldLength) { this.extraFieldLength = extraFieldLength; } public String getFileName() { return fileName; } public void setFileName(String fileName) { this.fileName = fileName; } public byte[] getExtraField() { return extraField; } public void setExtraField(byte[] extraField) { this.extraField = extraField; } public long getOffsetStartOfData() { return offsetStartOfData; } public void setOffsetStartOfData(long offsetStartOfData) { this.offsetStartOfData = offsetStartOfData; } public boolean isEncrypted() { return isEncrypted; } public void setEncrypted(boolean isEncrypted) { this.isEncrypted = isEncrypted; } public int getEncryptionMethod() { return encryptionMethod; } public void setEncryptionMethod(int encryptionMethod) { this.encryptionMethod = encryptionMethod; } public byte[] getCrcBuff() { return crcBuff; } public void setCrcBuff(byte[] crcBuff) { this.crcBuff = crcBuff; } public char[] getPassword() { return password; } public void setPassword(char[] password) { this.password = password; } public ArrayList getExtraDataRecords() { return extraDataRecords; } public void setExtraDataRecords(ArrayList extraDataRecords) { this.extraDataRecords = extraDataRecords; } public boolean isDataDescriptorExists() { return dataDescriptorExists; } public void setDataDescriptorExists(boolean dataDescriptorExists) { this.dataDescriptorExists = dataDescriptorExists; } public Zip64ExtendedInfo getZip64ExtendedInfo() { return zip64ExtendedInfo; } public void setZip64ExtendedInfo(Zip64ExtendedInfo zip64ExtendedInfo) { this.zip64ExtendedInfo = zip64ExtendedInfo; } public AESExtraDataRecord getAesExtraDataRecord() { return aesExtraDataRecord; } public void setAesExtraDataRecord(AESExtraDataRecord aesExtraDataRecord) { this.aesExtraDataRecord = aesExtraDataRecord; } public boolean isWriteComprSizeInZip64ExtraRecord() { return writeComprSizeInZip64ExtraRecord; } public void setWriteComprSizeInZip64ExtraRecord( boolean writeComprSizeInZip64ExtraRecord) { this.writeComprSizeInZip64ExtraRecord = writeComprSizeInZip64ExtraRecord; } public boolean isFileNameUTF8Encoded() { return fileNameUTF8Encoded; } public void setFileNameUTF8Encoded(boolean fileNameUTF8Encoded) { this.fileNameUTF8Encoded = fileNameUTF8Encoded; } }