Package com.morpheusdata.core.util.image
Class VmdkInputStream
java.lang.Object
java.io.InputStream
com.morpheusdata.core.util.image.VmdkInputStream
- All Implemented Interfaces:
Closeable
,AutoCloseable
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionVmdkInputStream
(InputStream sourceStream, VmdkHeader vmdkHeader, VmdkDirectory vmdkDirectory, Long contentLength) VmdkInputStream
(InputStream sourceStream, VmdkHeader vmdkHeader, Long contentLength) VmdkInputStream
(InputStream sourceStream, Long contentLength) VmdkInputStream
(InputStream sourceStream, Long contentLength, boolean cacheHeaderBytes) -
Method Summary
Modifier and TypeMethodDescriptionboolean
protected void
int
read()
Reads the next byte of data from the input stream.void
Methods inherited from class java.io.InputStream
available, close, mark, markSupported, nullInputStream, read, read, readAllBytes, readNBytes, readNBytes, reset, skip, skipNBytes, transferTo
-
Field Details
-
vmdkHeader
-
-
Constructor Details
-
VmdkInputStream
public VmdkInputStream(InputStream sourceStream, Long contentLength, boolean cacheHeaderBytes) throws IllegalArgumentException, IllegalStateException, IOException -
VmdkInputStream
public VmdkInputStream(InputStream sourceStream, Long contentLength) throws IllegalArgumentException, IllegalStateException, IOException -
VmdkInputStream
public VmdkInputStream(InputStream sourceStream, VmdkHeader vmdkHeader, Long contentLength) throws IllegalArgumentException, IllegalStateException, IOException -
VmdkInputStream
public VmdkInputStream(InputStream sourceStream, VmdkHeader vmdkHeader, VmdkDirectory vmdkDirectory, Long contentLength) throws IllegalArgumentException, IllegalStateException, IOException
-
-
Method Details
-
readDirectory
- Throws:
IOException
-
isTwoPassNeeded
public boolean isTwoPassNeeded() -
readMarker
- Throws:
IOException
-
read
Reads the next byte of data from the input stream. The value byte is returned as anint
in the range0
to255
. If no byte is available because the end of the stream has been reached, the value-1
is returned. This method blocks until input data is available, the end of the stream is detected, or an exception is thrown.A subclass must provide an implementation of this method.
- Specified by:
read
in classInputStream
- Returns:
- the next byte of data, or
-1
if the end of the stream is reached. - Throws:
IOException
- if an I/O error occurs.
-
loadNextGrainTable
- Throws:
IOException
-