XNIO API 2.1.0.CR2

org.jboss.xnio.channels
Interface StreamSourceChannel

All Superinterfaces:
Channel, Closeable, CloseableChannel, Configurable, ReadableByteChannel, ScatteringByteChannel, SuspendableReadChannel
All Known Subinterfaces:
ConnectedStreamChannel<A>, LocalChannel, SslTcpChannel, StreamChannel, TcpChannel

public interface StreamSourceChannel
extends ReadableByteChannel, ScatteringByteChannel, SuspendableReadChannel

A stream source channel. This type of channel is a readable source for bytes.


Method Summary
 ChannelListener.Setter<? extends StreamSourceChannel> getCloseSetter()
          Get the setter which can be used to change the close listener for this channel.
 ChannelListener.Setter<? extends StreamSourceChannel> getReadSetter()
          Get the setter which can be used to change the read listener for this channel.
 long transferTo(long position, long count, FileChannel target)
          Transfers bytes into the given file from this channel.
 
Methods inherited from interface java.nio.channels.ScatteringByteChannel
read, read
 
Methods inherited from interface java.nio.channels.ReadableByteChannel
read
 
Methods inherited from interface org.jboss.xnio.channels.SuspendableReadChannel
awaitReadable, awaitReadable, resumeReads, shutdownReads, suspendReads
 
Methods inherited from interface java.nio.channels.Channel
close, isOpen
 
Methods inherited from interface org.jboss.xnio.channels.Configurable
getOption, setOption, supportsOption
 

Method Detail

transferTo

long transferTo(long position,
                long count,
                FileChannel target)
                throws IOException
Transfers bytes into the given file from this channel. Using this method in preference to FileChannel.transferFrom(java.nio.channels.ReadableByteChannel, long, long) may provide a performance advantage on some platforms.

Parameters:
position - the position within the file from which the transfer is to begin
count - the number of bytes to be transferred
target - the file to write to
Returns:
the number of bytes (possibly 0) that were actually transferred
Throws:
IOException - if an I/O error occurs

getReadSetter

ChannelListener.Setter<? extends StreamSourceChannel> getReadSetter()
Get the setter which can be used to change the read listener for this channel. When the listener is called, additional notifications are automatically suspended.

Specified by:
getReadSetter in interface SuspendableReadChannel
Returns:
the setter

getCloseSetter

ChannelListener.Setter<? extends StreamSourceChannel> getCloseSetter()
Get the setter which can be used to change the close listener for this channel. If the channel is already closed, then the listener will not be called.

Specified by:
getCloseSetter in interface CloseableChannel
Specified by:
getCloseSetter in interface SuspendableReadChannel
Returns:
the setter

XNIO API 2.1.0.CR2

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