RAInputStream.java from BIRT at Krugle
Show RAInputStream.java syntax highlighted
/*******************************************************************************
* Copyright (c) 2004 Actuate Corporation.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Actuate Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.birt.core.archive;
import java.io.IOException;
import java.io.InputStream;
public abstract class RAInputStream extends InputStream
{
/**
* @param localPos
* @throws IOException
*/
public abstract void seek( long localPos ) throws IOException;
public abstract long getOffset() throws IOException;
public abstract long length() throws IOException;
/**
* @return
* @throws IOException
*/
public abstract int readInt() throws IOException;
public abstract long readLong() throws IOException;
public abstract void readFully( byte b[], int off, int len ) throws IOException;
public abstract void refresh( ) throws IOException;
/**
* Returns the number of bytes that can be read (or skipped over) from this
* random access input stream without blocking by the next caller of a
* method for this input stream. The next caller might be the same thread or
* another thread.
* <P>
* This abstract class is extended by <code>RAFolderInputStream</code> and
* <code>RAFileInputStream</code>
* <P>
* The <code>available</code> method returns <code>-1</code> when no
* more data because the end of the stream has been reached.
* <P>
* and returns <code>Integer.MAX_VALUE</code> when bytes of data is larger
* then Integer.MAX_VALUE.
*/
public abstract int available( ) throws IOException;
}
See more files for this project here