public class PSTNodeInputStream
extends java.io.InputStream
Modifier and Type | Field and Description |
---|---|
private byte[] |
allData |
private int |
currentBlock |
private long |
currentLocation |
private boolean |
encrypted |
private PSTFileContent |
in |
private java.util.LinkedList<OffsetIndexItem> |
indexItems |
private boolean |
isZlib |
private long |
length |
private PSTFile |
pstFile |
private java.util.LinkedList<java.lang.Long> |
skipPoints |
private int |
totalLoopCount |
Constructor and Description |
---|
PSTNodeInputStream(PSTFile pstFile,
byte[] attachmentData) |
PSTNodeInputStream(PSTFile pstFile,
byte[] attachmentData,
boolean encrypted) |
PSTNodeInputStream(PSTFile pstFile,
OffsetIndexItem offsetItem) |
PSTNodeInputStream(PSTFile pstFile,
PSTDescriptorItem descriptorItem) |
Modifier and Type | Method and Description |
---|---|
private void |
detectZlib() |
java.lang.Long[] |
getBlockOffsets()
Get the offsets (block positions) used in the array
|
private void |
getBlockSkipPoints(byte[] data) |
PSTFile |
getPSTFile() |
boolean |
isEncrypted() |
long |
length() |
private void |
loadFromOffsetItem(OffsetIndexItem offsetItem) |
boolean |
markSupported() |
int |
read() |
int |
read(byte[] output)
Read a block from the input stream.
|
int |
read(byte[] output,
int offset,
int length) |
void |
readCompletely(byte[] target)
Read a block from the input stream, ensuring buffer is completely filled.
|
void |
reset() |
void |
seek(long location) |
long |
seekAndReadLong(long location,
int bytes) |
private PSTFileContent in
private PSTFile pstFile
private final java.util.LinkedList<java.lang.Long> skipPoints
private final java.util.LinkedList<OffsetIndexItem> indexItems
private int currentBlock
private long currentLocation
private byte[] allData
private long length
private boolean encrypted
private final boolean isZlib
private int totalLoopCount
PSTNodeInputStream(PSTFile pstFile, byte[] attachmentData) throws PSTException
PSTException
PSTNodeInputStream(PSTFile pstFile, byte[] attachmentData, boolean encrypted) throws PSTException
PSTException
PSTNodeInputStream(PSTFile pstFile, PSTDescriptorItem descriptorItem) throws java.io.IOException, PSTException
java.io.IOException
PSTException
PSTNodeInputStream(PSTFile pstFile, OffsetIndexItem offsetItem) throws java.io.IOException, PSTException
java.io.IOException
PSTException
private void detectZlib() throws PSTException
PSTException
private void loadFromOffsetItem(OffsetIndexItem offsetItem) throws java.io.IOException, PSTException
java.io.IOException
PSTException
public boolean isEncrypted()
private void getBlockSkipPoints(byte[] data) throws java.io.IOException, PSTException
java.io.IOException
PSTException
public long length()
public int read() throws java.io.IOException
read
in class java.io.InputStream
java.io.IOException
public void readCompletely(byte[] target) throws java.io.IOException
target
- buffer to filljava.io.IOException
public int read(byte[] output) throws java.io.IOException
read
in class java.io.InputStream
output
- java.io.IOException
public int read(byte[] output, int offset, int length) throws java.io.IOException
read
in class java.io.InputStream
java.io.IOException
public void reset()
reset
in class java.io.InputStream
public boolean markSupported()
markSupported
in class java.io.InputStream
public java.lang.Long[] getBlockOffsets()
public void seek(long location) throws java.io.IOException, PSTException
java.io.IOException
PSTException
public long seekAndReadLong(long location, int bytes) throws java.io.IOException, PSTException
java.io.IOException
PSTException
public PSTFile getPSTFile()