org.gudy.azureus2.plugins.network
Interface Transport

All Known Implementing Classes:
TransportImpl

public interface Transport

Represents an underlying network transport.


Method Summary
 long read(ByteBuffer[] buffers, int array_offset, int length)
          Read data from the transport into the given buffers.
 void setFilter(TransportFilter filter)
           
 long write(ByteBuffer[] buffers, int array_offset, int length)
          Write data to the transport from the given buffers.
 

Method Detail

read

long read(ByteBuffer[] buffers,
          int array_offset,
          int length)
          throws IOException
Read data from the transport into the given buffers. NOTE: Works like ScatteringByteChannel.

Parameters:
buffers - into which bytes are to be placed
array_offset - offset within the buffer array of the first buffer into which bytes are to be placed
length - maximum number of buffers to be accessed
Returns:
number of bytes read
Throws:
IOException - on read error

write

long write(ByteBuffer[] buffers,
           int array_offset,
           int length)
           throws IOException
Write data to the transport from the given buffers. NOTE: Works like GatheringByteChannel.

Parameters:
buffers - from which bytes are to be retrieved
array_offset - offset within the buffer array of the first buffer from which bytes are to be retrieved
length - maximum number of buffers to be accessed
Returns:
number of bytes written
Throws:
IOException - on write error

setFilter

void setFilter(TransportFilter filter)
               throws IOException
Throws:
IOException
Since:
3.0.5.3