Imported GNU Classpath 0.92
2006-08-14 Mark Wielaard <mark@klomp.org> Imported GNU Classpath 0.92 * HACKING: Add more importing hints. Update automake version requirement. * configure.ac (gconf-peer): New enable AC argument. Add --disable-gconf-peer and --enable-default-preferences-peer to classpath configure when gconf is disabled. * scripts/makemake.tcl: Set gnu/java/util/prefs/gconf and gnu/java/awt/dnd/peer/gtk to bc. Classify gnu/java/security/Configuration.java as generated source file. * gnu/java/lang/management/VMGarbageCollectorMXBeanImpl.java, gnu/java/lang/management/VMMemoryPoolMXBeanImpl.java, gnu/java/lang/management/VMClassLoadingMXBeanImpl.java, gnu/java/lang/management/VMRuntimeMXBeanImpl.java, gnu/java/lang/management/VMMemoryManagerMXBeanImpl.java, gnu/java/lang/management/VMThreadMXBeanImpl.java, gnu/java/lang/management/VMMemoryMXBeanImpl.java, gnu/java/lang/management/VMCompilationMXBeanImpl.java: New VM stub classes. * java/lang/management/VMManagementFactory.java: Likewise. * java/net/VMURLConnection.java: Likewise. * gnu/java/nio/VMChannel.java: Likewise. * java/lang/Thread.java (getState): Add stub implementation. * java/lang/Class.java (isEnum): Likewise. * java/lang/Class.h (isEnum): Likewise. * gnu/awt/xlib/XToolkit.java (getClasspathTextLayoutPeer): Removed. * javax/naming/spi/NamingManager.java: New override for StackWalker functionality. * configure, sources.am, Makefile.in, gcj/Makefile.in, include/Makefile.in, testsuite/Makefile.in: Regenerated. From-SVN: r116139
This commit is contained in:
parent
abab460491
commit
ac1ed908de
1294 changed files with 99479 additions and 35933 deletions
|
@ -38,10 +38,11 @@ exception statement from your version. */
|
|||
|
||||
package javax.imageio.stream;
|
||||
|
||||
import gnu.classpath.NotImplementedException;
|
||||
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
|
||||
/**
|
||||
* @author Michael Koch (konqueror@gmx.de)
|
||||
|
@ -49,10 +50,15 @@ import java.io.InputStream;
|
|||
public class MemoryCacheImageInputStream extends ImageInputStreamImpl
|
||||
{
|
||||
private InputStream stream;
|
||||
private BufferedInputStream buffer;
|
||||
|
||||
private int READLIMIT = 2048;
|
||||
|
||||
public MemoryCacheImageInputStream(InputStream stream)
|
||||
{
|
||||
this.stream = stream;
|
||||
buffer = new BufferedInputStream(stream);
|
||||
buffer.mark(READLIMIT);
|
||||
}
|
||||
|
||||
public void close()
|
||||
|
@ -63,10 +69,13 @@ public class MemoryCacheImageInputStream extends ImageInputStreamImpl
|
|||
}
|
||||
|
||||
public void flushBefore(long position)
|
||||
throws IOException, NotImplementedException
|
||||
throws IOException
|
||||
{
|
||||
// FIXME: Implement me.
|
||||
throw new Error("not implemented");
|
||||
long prevFlushedPosition = getFlushedPosition();
|
||||
super.flushBefore(position);
|
||||
buffer.reset();
|
||||
buffer.skip(getFlushedPosition() - prevFlushedPosition);
|
||||
buffer.mark(READLIMIT);
|
||||
}
|
||||
|
||||
public boolean isCached()
|
||||
|
@ -88,13 +97,33 @@ public class MemoryCacheImageInputStream extends ImageInputStreamImpl
|
|||
throws IOException
|
||||
{
|
||||
setBitOffset(0);
|
||||
return stream.read();
|
||||
int retval = buffer.read();
|
||||
|
||||
if (retval != -1)
|
||||
streamPos++;
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
public int read(byte[] data, int offset, int len)
|
||||
throws IOException
|
||||
{
|
||||
setBitOffset(0);
|
||||
return stream.read(data, offset, len);
|
||||
int retval = buffer.read(data, offset, len);
|
||||
|
||||
if (retval != -1)
|
||||
{
|
||||
streamPos += retval;
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
public void seek(long position)
|
||||
throws IOException
|
||||
{
|
||||
super.seek(position);
|
||||
buffer.reset();
|
||||
buffer.skip(position - getFlushedPosition());
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue