net.sf.sevenzipjbinding.IInStream Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jwrapper-7zip-jbinding Show documentation
Show all versions of jwrapper-7zip-jbinding Show documentation
${project.organization.name} JWrapper 7zip Jbinding
The newest version!
package net.sf.sevenzipjbinding;
/**
* InStream interface used to operate with seeable input stream
*
* @author Boris Brodski
* @version 4.65-1
*/
public interface IInStream extends ISequentialInStream {
/**
* Indicates, that the seek operation should be done from the beginning of the stream
*/
public static final int SEEK_SET = 0;
/**
* Indicates, that the seek operation should be done from the current position (file pointer) of the stream.
* Positive values move file pointer forward.
*/
public static final int SEEK_CUR = 1;
/**
* Indicates, that the seek operation should be done from the end of the stream. Positive offset values move file
* pointer over the end of the stream. For the read only streams it's equivalent reaching end of the stream while
* reading.
*/
public static final int SEEK_END = 2;
/**
* Move current location pointer to the new offset depending on seekOrigin
*
* @param offset
* absolute or relative offset in the stream to move to
* @param seekOrigin
* on of three possible seek origins:
* {@link #SEEK_SET} - offset
is an absolute offset to move to,
* {@link #SEEK_CUR} - offset
is a relative offset to the current position in stream,
* {@link #SEEK_END} - offset
is an offset from the end of the stream
* (offset <= 0)
.
*
* @return new absolute position in the stream.
*
* @throws SevenZipException
* in error case. If this method ends with an exception, the current operation will be reported to 7-Zip
* as failed. There are no guarantee, that there are no further call back methods will be called. The
* first thrown exception will be saved and thrown late on from the first called 7-Zip-JBinding main
* method, such as ISevenZipInArchive.extract()
or SevenZip.openInArchive()
.
*/
public long seek(long offset, int seekOrigin) throws SevenZipException;
}