XNIO version 1.2.0.GA

org.jboss.xnio.channels
Class ChannelInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by org.jboss.xnio.channels.ChannelInputStream
All Implemented Interfaces:
Closeable

public class ChannelInputStream
extends InputStream

An input stream which reads from a stream source channel. All read operations are directly performed upon the channel, so for optimal performance, a buffering input stream should be used to wrap this class.

Since:
1.2

Field Summary
protected  StreamSourceChannel channel
           
protected  boolean closed
           
 
Constructor Summary
ChannelInputStream(StreamSourceChannel channel)
          Construct a new instance.
 
Method Summary
 void close()
          
 int read()
          
 int read(byte[] b)
          
 int read(byte[] b, int off, int len)
          
 
Methods inherited from class java.io.InputStream
available, mark, markSupported, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

channel

protected final StreamSourceChannel channel

closed

protected volatile boolean closed
Constructor Detail

ChannelInputStream

public ChannelInputStream(StreamSourceChannel channel)
Construct a new instance.

Parameters:
channel - the channel to wrap
Method Detail

read

public int read()
         throws IOException

Specified by:
read in class InputStream
Throws:
IOException

read

public int read(byte[] b)
         throws IOException

Overrides:
read in class InputStream
Throws:
IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException

Overrides:
read in class InputStream
Throws:
IOException

close

public void close()
           throws IOException

Specified by:
close in interface Closeable
Overrides:
close in class InputStream
Throws:
IOException

XNIO version 1.2.0.GA

Copyright © 2008 JBoss, a division of Red Hat, Inc.