Top Inners Fields Constructors Methods
org.wildfly.common.archive

public final Class Archive

extends Object
implements Closeable
Class Inheritance
All Implemented Interfaces
java.io.Closeable, java.lang.AutoCloseable
Static Imports
java.lang.Math.min

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class
Archive.Cp437

Only loaded if CP-437 zip entries exist, which is unlikely but allowed.

pack-priv static class

Field Summary

Modifier and TypeField and Description
private static final int
private static final int
private static final int
BUF_SIZE_MAX

Maximum size of a single buffer.

private final ByteBuffer[]
private final long
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
private static final ByteBuffer
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
private final Index
private final long
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
private final long
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int

Constructor Summary

AccessConstructor and Description
private
Archive(final ByteBuffer[] bufs, final long offset, final long length, final long cd, final Index index)

Method Summary

Modifier and TypeMethod and Description
pack-priv static ByteBuffer
bufferOf(ByteBuffer[] bufs, long idx, int len)

pack-priv static int
bufIdx(long idx)

pack-priv static int
bufOffs(long idx)

pack-priv static long
public void
close()

Implements java.io.Closeable.close.

Closes this stream and releases any system resources associated with it.
private static long
dosTimeStamp(int modTime, int modDate)

public boolean
entryNameEquals(final long entryHandle, final String fileName)

pack-priv static byte
getByte(ByteBuffer[] bufs, long idx)

pack-priv static byte[]
getBytes(ByteBuffer[] bufs, long idx, int len)

public long
getCompressedSize(long entryHandle)

private int
getCompressionMethod(final long entryHandle)

private long
getDataOffset(final long localHeader)

public ByteBuffer
getEntryContents(long entryHandle)

public long
public String
getEntryName(long entryHandle)

public InputStream
getEntryStream(final long entryHandle)

private long
getExtraRecord(final long entryHandle, final int headerId)

public long
private static int
getHashCodeOfEntry(ByteBuffer[] bufs, long cde)

pack-priv static int
getInt(ByteBuffer[] bufs, long idx)

private long
getLocalHeader(long entryHandle)

pack-priv static long
getLong(ByteBuffer[] bufs, long idx)

pack-priv static int
getMedium(ByteBuffer[] bufs, long idx)

public long
getModifiedTime(long entryHandle)

private static String
getNameOfEntry(ByteBuffer[] bufs, long cde)

public Archive
getNestedArchive(long entryHandle)

public long
getNextEntryHandle(long entryHandle)

pack-priv static short
getShort(ByteBuffer[] bufs, long idx)

public long
getUncompressedSize(long entryHandle)

pack-priv static int
getUnsignedByte(ByteBuffer[] bufs, long idx)

pack-priv static int
pack-priv static long
getUnsignedInt(ByteBuffer[] bufs, long idx)

pack-priv static long
getUnsignedMedium(ByteBuffer[] bufs, long idx)

pack-priv static int
getUnsignedShort(ByteBuffer[] bufs, long idx)

public boolean
isCompressed(long entryHandle)

public boolean
isDirectory(final long entryHandle)

public static Archive
open(Path path)

public static Archive
pack-priv static Archive
open(ByteBuffer[] bufs)

pack-priv static Archive
open(ByteBuffer[] bufs, long offset, long length)

pack-priv static void
readBytes(ByteBuffer[] bufs, long idx, byte[] dest, int off, int len)

pack-priv static ByteBuffer
sliceOf(ByteBuffer[] bufs, long idx, int len)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

BUF_SHIFTback to summary
private static final int BUF_SHIFT
BUF_SIZE_MASKback to summary
private static final int BUF_SIZE_MASK
BUF_SIZE_MAXback to summary
private static final int BUF_SIZE_MAX

Maximum size of a single buffer.

bufsback to summary
private final ByteBuffer[] bufs
cdback to summary
private final long cd
CDE_COMMENT_LENGTHback to summary
public static final int CDE_COMMENT_LENGTH
CDE_COMP_METHODback to summary
public static final int CDE_COMP_METHOD
CDE_COMPRESSED_SIZEback to summary
public static final int CDE_COMPRESSED_SIZE
CDE_CRC_32back to summary
public static final int CDE_CRC_32
CDE_ENDback to summary
public static final int CDE_END
CDE_EXTERNAL_ATTRIBUTESback to summary
public static final int CDE_EXTERNAL_ATTRIBUTES
CDE_EXTRA_LENGTHback to summary
public static final int CDE_EXTRA_LENGTH
CDE_FILE_NAME_LENGTHback to summary
public static final int CDE_FILE_NAME_LENGTH
CDE_FIRST_DISK_NUMBERback to summary
public static final int CDE_FIRST_DISK_NUMBER
CDE_GP_BITSback to summary
public static final int CDE_GP_BITS
CDE_INTERNAL_ATTRIBUTESback to summary
public static final int CDE_INTERNAL_ATTRIBUTES
CDE_LOCAL_HEADER_OFFSETback to summary
public static final int CDE_LOCAL_HEADER_OFFSET
CDE_MOD_DATEback to summary
public static final int CDE_MOD_DATE
CDE_MOD_TIMEback to summary
public static final int CDE_MOD_TIME
CDE_SIGNATUREback to summary
public static final int CDE_SIGNATURE
CDE_UNCOMPRESSED_SIZEback to summary
public static final int CDE_UNCOMPRESSED_SIZE
CDE_VERSION_MADE_BYback to summary
public static final int CDE_VERSION_MADE_BY
CDE_VERSION_NEEDEDback to summary
public static final int CDE_VERSION_NEEDED
DD_COMPRESSED_SIZEback to summary
public static final int DD_COMPRESSED_SIZE
DD_CRC_32back to summary
public static final int DD_CRC_32
DD_ENDback to summary
public static final int DD_END
DD_SIGNATUREback to summary
public static final int DD_SIGNATURE
DD_UNCOMPRESSED_SIZEback to summary
public static final int DD_UNCOMPRESSED_SIZE
DD_ZIP64_COMPRESSED_SIZEback to summary
public static final int DD_ZIP64_COMPRESSED_SIZE
DD_ZIP64_ENDback to summary
public static final int DD_ZIP64_END
DD_ZIP64_UNCOMPRESSED_SIZEback to summary
public static final int DD_ZIP64_UNCOMPRESSED_SIZE
EMPTY_BUFback to summary
private static final ByteBuffer EMPTY_BUF
EOCD_CD_FIRST_DISK_NUMBERback to summary
public static final int EOCD_CD_FIRST_DISK_NUMBER
EOCD_CD_SIZEback to summary
public static final int EOCD_CD_SIZE
EOCD_CD_START_OFFSETback to summary
public static final int EOCD_CD_START_OFFSET
EOCD_CDE_COUNT_ALLback to summary
public static final int EOCD_CDE_COUNT_ALL
EOCD_CDE_COUNT_THIS_DISKback to summary
public static final int EOCD_CDE_COUNT_THIS_DISK
EOCD_COMMENT_LENGTHback to summary
public static final int EOCD_COMMENT_LENGTH
EOCD_DISK_NUMBERback to summary
public static final int EOCD_DISK_NUMBER
EOCD_ENDback to summary
public static final int EOCD_END
EOCD_SIGNATUREback to summary
public static final int EOCD_SIGNATURE
EOCD_ZIP64_CD_FIRST_DISK_NUMBERback to summary
public static final int EOCD_ZIP64_CD_FIRST_DISK_NUMBER
EOCD_ZIP64_CD_SIZEback to summary
public static final int EOCD_ZIP64_CD_SIZE
EOCD_ZIP64_CD_START_OFFSETback to summary
public static final int EOCD_ZIP64_CD_START_OFFSET
EOCD_ZIP64_CDE_COUNT_ALLback to summary
public static final int EOCD_ZIP64_CDE_COUNT_ALL
EOCD_ZIP64_CDE_COUNT_THIS_DISKback to summary
public static final int EOCD_ZIP64_CDE_COUNT_THIS_DISK
EOCD_ZIP64_DISK_NUMBERback to summary
public static final int EOCD_ZIP64_DISK_NUMBER
EOCD_ZIP64_ENDback to summary
public static final int EOCD_ZIP64_END
EOCD_ZIP64_SIGNATUREback to summary
public static final int EOCD_ZIP64_SIGNATURE
EOCD_ZIP64_SIZEback to summary
public static final int EOCD_ZIP64_SIZE
EOCD_ZIP64_VERSION_MADE_BYback to summary
public static final int EOCD_ZIP64_VERSION_MADE_BY
EOCD_ZIP64_VERSION_NEEDEDback to summary
public static final int EOCD_ZIP64_VERSION_NEEDED
EOCDL_ZIP64_DISK_COUNTback to summary
public static final int EOCDL_ZIP64_DISK_COUNT
EOCDL_ZIP64_ENDback to summary
public static final int EOCDL_ZIP64_END
EOCDL_ZIP64_EOCD_DISK_NUMBERback to summary
public static final int EOCDL_ZIP64_EOCD_DISK_NUMBER
EOCDL_ZIP64_EOCD_OFFSETback to summary
public static final int EOCDL_ZIP64_EOCD_OFFSET
EOCDL_ZIP64_SIGNATUREback to summary
public static final int EOCDL_ZIP64_SIGNATURE
EXT_ID_UNIXback to summary
public static final int EXT_ID_UNIX
EXT_ID_ZIP64back to summary
public static final int EXT_ID_ZIP64
GP_CD_MASKEDback to summary
public static final int GP_CD_MASKED
GP_COMPRESSED_PATCHEDback to summary
public static final int GP_COMPRESSED_PATCHED
GP_DEFLATE_COMP_OPT_FASTback to summary
public static final int GP_DEFLATE_COMP_OPT_FAST
GP_DEFLATE_COMP_OPT_MASKback to summary
public static final int GP_DEFLATE_COMP_OPT_MASK
GP_DEFLATE_COMP_OPT_MAXIMUMback to summary
public static final int GP_DEFLATE_COMP_OPT_MAXIMUM
GP_DEFLATE_COMP_OPT_NORMALback to summary
public static final int GP_DEFLATE_COMP_OPT_NORMAL
GP_DEFLATE_COMP_OPT_SUPER_FASTback to summary
public static final int GP_DEFLATE_COMP_OPT_SUPER_FAST
GP_ENCRYPTEDback to summary
public static final int GP_ENCRYPTED
GP_IMPLODE_3_TREESback to summary
public static final int GP_IMPLODE_3_TREES
GP_IMPLODE_8K_DICTIONARYback to summary
public static final int GP_IMPLODE_8K_DICTIONARY
GP_LATE_SIZESback to summary
public static final int GP_LATE_SIZES
GP_LZMA_EOS_USEDback to summary
public static final int GP_LZMA_EOS_USED
GP_STRONG_ENCRYPTIONback to summary
public static final int GP_STRONG_ENCRYPTION
GP_UTF_8back to summary
public static final int GP_UTF_8
indexback to summary
private final Index index
lengthback to summary
private final long length
LH_COMP_METHODback to summary
public static final int LH_COMP_METHOD
LH_COMPRESSED_SIZEback to summary
public static final int LH_COMPRESSED_SIZE
LH_CRC_32back to summary
public static final int LH_CRC_32
LH_ENDback to summary
public static final int LH_END
LH_EXTRA_LENGTHback to summary
public static final int LH_EXTRA_LENGTH
LH_FILE_NAME_LENGTHback to summary
public static final int LH_FILE_NAME_LENGTH
LH_GP_BITSback to summary
public static final int LH_GP_BITS
LH_MIN_VERSIONback to summary
public static final int LH_MIN_VERSION
LH_MOD_DATEback to summary
public static final int LH_MOD_DATE
LH_MOD_TIMEback to summary
public static final int LH_MOD_TIME
LH_SIGNATUREback to summary
public static final int LH_SIGNATURE
LH_UNCOMPRESSED_SIZEback to summary
public static final int LH_UNCOMPRESSED_SIZE
MADE_BY_MS_DOSback to summary
public static final int MADE_BY_MS_DOS
MADE_BY_NTFSback to summary
public static final int MADE_BY_NTFS
MADE_BY_OS_Xback to summary
public static final int MADE_BY_OS_X
MADE_BY_UNIXback to summary
public static final int MADE_BY_UNIX
METHOD_BZIP2back to summary
public static final int METHOD_BZIP2
METHOD_DEFLATEback to summary
public static final int METHOD_DEFLATE
METHOD_DEFLATE64back to summary
public static final int METHOD_DEFLATE64
METHOD_IMPLODEback to summary
public static final int METHOD_IMPLODE
METHOD_LZMAback to summary
public static final int METHOD_LZMA
METHOD_REDUCE_1back to summary
public static final int METHOD_REDUCE_1
METHOD_REDUCE_2back to summary
public static final int METHOD_REDUCE_2
METHOD_REDUCE_3back to summary
public static final int METHOD_REDUCE_3
METHOD_REDUCE_4back to summary
public static final int METHOD_REDUCE_4
METHOD_SHRINKback to summary
public static final int METHOD_SHRINK
METHOD_STOREDback to summary
public static final int METHOD_STORED
offsetback to summary
private final long offset
SIG_CDEback to summary
public static final int SIG_CDE
SIG_DDback to summary
public static final int SIG_DD
SIG_EOCDback to summary
public static final int SIG_EOCD
SIG_EOCD_ZIP64back to summary
public static final int SIG_EOCD_ZIP64
SIG_EOCDL_ZIP64back to summary
public static final int SIG_EOCDL_ZIP64
SIG_LHback to summary
public static final int SIG_LH
UNIX_ACCESS_TIMEback to summary
public static final int UNIX_ACCESS_TIME
UNIX_DEV_ENDback to summary
public static final int UNIX_DEV_END
UNIX_DEV_MAJORback to summary
public static final int UNIX_DEV_MAJOR
UNIX_DEV_MINORback to summary
public static final int UNIX_DEV_MINOR
UNIX_ENDback to summary
public static final int UNIX_END
UNIX_GIDback to summary
public static final int UNIX_GID
UNIX_MODIFIED_TIMEback to summary
public static final int UNIX_MODIFIED_TIME
UNIX_UIDback to summary
public static final int UNIX_UID
ZIP64_COMPRESSED_SIZEback to summary
public static final int ZIP64_COMPRESSED_SIZE
ZIP64_ENDback to summary
public static final int ZIP64_END
ZIP64_FIRST_DISK_NUMBERback to summary
public static final int ZIP64_FIRST_DISK_NUMBER
ZIP64_LOCAL_HEADER_OFFSETback to summary
public static final int ZIP64_LOCAL_HEADER_OFFSET
ZIP64_UNCOMPRESSED_SIZEback to summary
public static final int ZIP64_UNCOMPRESSED_SIZE

Constructor Detail

Archiveback to summary
private Archive(final ByteBuffer[] bufs, final long offset, final long length, final long cd, final Index index)

Method Detail

bufferOfback to summary
pack-priv static ByteBuffer bufferOf(ByteBuffer[] bufs, long idx, int len)
bufIdxback to summary
pack-priv static int bufIdx(long idx)
bufOffsback to summary
pack-priv static int bufOffs(long idx)
capacityback to summary
pack-priv static long capacity(ByteBuffer[] bufs)
closeback to summary
public void close()

Implements java.io.Closeable.close.

Doc from java.io.Closeable.close.

Closes this stream and releases any system resources associated with it. If the stream is already closed then invoking this method has no effect.

As noted in AutoCloseable#close(), cases where the close may fail require careful attention. It is strongly advised to relinquish the underlying resources and to internally mark the Closeable as closed, prior to throwing the IOException.

dosTimeStampback to summary
private static long dosTimeStamp(int modTime, int modDate)
entryNameEqualsback to summary
public boolean entryNameEquals(final long entryHandle, final String fileName)
getByteback to summary
pack-priv static byte getByte(ByteBuffer[] bufs, long idx)
getBytesback to summary
pack-priv static byte[] getBytes(ByteBuffer[] bufs, long idx, int len)
getCompressedSizeback to summary
public long getCompressedSize(long entryHandle)
getCompressionMethodback to summary
private int getCompressionMethod(final long entryHandle)
getDataOffsetback to summary
private long getDataOffset(final long localHeader)
getEntryContentsback to summary
public ByteBuffer getEntryContents(long entryHandle) throws IOException
getEntryHandleback to summary
public long getEntryHandle(String fileName)
getEntryNameback to summary
public String getEntryName(long entryHandle)
getEntryStreamback to summary
public InputStream getEntryStream(final long entryHandle) throws IOException
getExtraRecordback to summary
private long getExtraRecord(final long entryHandle, final int headerId)
getFirstEntryHandleback to summary
public long getFirstEntryHandle()
getHashCodeOfEntryback to summary
private static int getHashCodeOfEntry(ByteBuffer[] bufs, long cde)
getIntback to summary
pack-priv static int getInt(ByteBuffer[] bufs, long idx)
getLocalHeaderback to summary
private long getLocalHeader(long entryHandle)
getLongback to summary
pack-priv static long getLong(ByteBuffer[] bufs, long idx)
getMediumback to summary
pack-priv static int getMedium(ByteBuffer[] bufs, long idx)
getModifiedTimeback to summary
public long getModifiedTime(long entryHandle)
getNameOfEntryback to summary
private static String getNameOfEntry(ByteBuffer[] bufs, long cde)
getNestedArchiveback to summary
public Archive getNestedArchive(long entryHandle) throws IOException
getNextEntryHandleback to summary
public long getNextEntryHandle(long entryHandle)
getShortback to summary
pack-priv static short getShort(ByteBuffer[] bufs, long idx)
getUncompressedSizeback to summary
public long getUncompressedSize(long entryHandle)
getUnsignedByteback to summary
pack-priv static int getUnsignedByte(ByteBuffer[] bufs, long idx)
getUnsignedByteback to summary
pack-priv static int getUnsignedByte(ByteBuffer buf, int idx)
getUnsignedIntback to summary
pack-priv static long getUnsignedInt(ByteBuffer[] bufs, long idx)
getUnsignedMediumback to summary
pack-priv static long getUnsignedMedium(ByteBuffer[] bufs, long idx)
getUnsignedShortback to summary
pack-priv static int getUnsignedShort(ByteBuffer[] bufs, long idx)
isCompressedback to summary
public boolean isCompressed(long entryHandle)
isDirectoryback to summary
public boolean isDirectory(final long entryHandle)
openback to summary
public static Archive open(Path path) throws IOException
openback to summary
public static Archive open(ByteBuffer buf) throws IOException
openback to summary
pack-priv static Archive open(ByteBuffer[] bufs) throws IOException
openback to summary
pack-priv static Archive open(ByteBuffer[] bufs, long offset, long length) throws IOException
readBytesback to summary
pack-priv static void readBytes(ByteBuffer[] bufs, long idx, byte[] dest, int off, int len)
sliceOfback to summary
pack-priv static ByteBuffer sliceOf(ByteBuffer[] bufs, long idx, int len)
org.wildfly.common.archive back to summary

pack-priv final Class Archive.Cp437

extends Object
Class Inheritance

Only loaded if CP-437 zip entries exist, which is unlikely but allowed.

Field Summary

Modifier and TypeField and Description
pack-priv static final char[]

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
pack-priv static char
charFor(int c)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

codePointsback to summary
pack-priv static final char[] codePoints

Constructor Detail

Cp437back to summary
private Cp437()

Method Detail

charForback to summary
pack-priv static char charFor(int c)
org.wildfly.common.archive back to summary

pack-priv final Class Archive.Utf8

extends Object
Class Inheritance

Constructor Summary

AccessConstructor and Description
private
Utf8()

Method Summary

Modifier and TypeMethod and Description
pack-priv static int
codePointAt(final ByteBuffer[] bufs, final long i)

pack-priv static int
getByteCount(final int a)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

Utf8back to summary
private Utf8()

Method Detail

codePointAtback to summary
pack-priv static int codePointAt(final ByteBuffer[] bufs, final long i)
getByteCountback to summary
pack-priv static int getByteCount(final int a)