XNIO API 2.0.0.GA

org.jboss.xnio.channels
Interface StreamSourceChannel

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

public interface StreamSourceChannel
extends java.nio.channels.ReadableByteChannel, java.nio.channels.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 handler for this channel.
 ChannelListener.Setter<? extends StreamSourceChannel> getReadSetter()
          Get the setter which can be used to change the read handler for this channel.
 long transferTo(long position, long count, java.nio.channels.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,
                java.nio.channels.FileChannel target)
                throws java.io.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:
java.io.IOException - if an I/O error occurs

getReadSetter

ChannelListener.Setter<? extends StreamSourceChannel> getReadSetter()
Get the setter which can be used to change the read handler for this channel. When the handler 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 handler for this channel. If the channel is already closed, then the handler will not be called.

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

XNIO API 2.0.0.GA

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