Class ChmPmgiHeader
- java.lang.Object
-
- org.apache.tika.parser.microsoft.chm.ChmPmgiHeader
-
- All Implemented Interfaces:
Serializable
,ChmAccessor<ChmPmgiHeader>
public class ChmPmgiHeader extends Object implements ChmAccessor<ChmPmgiHeader>
Description Note: not always exists An index chunk has the following format: 0000: char[4] 'PMGI' 0004: DWORD Length of quickref/free area at end of directory chunk 0008: Directory index entries (to quickref/free area) The quickref area in an PMGI is the same as in an PMGL The format of a directory index entry is as follows: BYTE: length of name BYTEs: name (UTF-8 encoded) ENCINT: directory listing chunk which starts with name Encoded Integers aka ENCINT An ENCINT is a variable-length integer. The high bit of each byte indicates "continued to the next byte". Bytes are stored most significant to least significant. So, for example, $EA $15 is (((0xEA&0x7F)<<7)|0x15) = 0x3515.Note: This class is not in use
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ChmPmgiHeader()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
getFreeSpace()
Returns pmgi free spacebyte[]
getSignature()
Returns pmgi signature if existsvoid
parse(byte[] data, ChmPmgiHeader chmPmgiHeader)
Parses chm accessorprotected void
setFreeSpace(long free_space)
Sets pmgi free spaceprotected void
setSignature(byte[] signature)
Sets pmgi signatureString
toString()
Returns textual representation of the pmgi header
-
-
-
Method Detail
-
getSignature
public byte[] getSignature()
Returns pmgi signature if exists- Returns:
- signature
-
setSignature
protected void setSignature(byte[] signature)
Sets pmgi signature- Parameters:
signature
-
-
getFreeSpace
public long getFreeSpace()
Returns pmgi free space- Returns:
- free_space
-
setFreeSpace
protected void setFreeSpace(long free_space)
Sets pmgi free space- Parameters:
free_space
-
-
toString
public String toString()
Returns textual representation of the pmgi header
-
parse
public void parse(byte[] data, ChmPmgiHeader chmPmgiHeader) throws TikaException
Description copied from interface:ChmAccessor
Parses chm accessor- Specified by:
parse
in interfaceChmAccessor<ChmPmgiHeader>
- Parameters:
data
- chm file- Throws:
TikaException
-
-