com.aelitis.azureus.core.networkmanager.impl.tcp
Class TCPTransportHelper

java.lang.Object
  extended by com.aelitis.azureus.core.networkmanager.impl.tcp.TCPTransportHelper
All Implemented Interfaces:
TransportHelper

public class TCPTransportHelper
extends Object
implements TransportHelper


Nested Class Summary
 
Nested classes/interfaces inherited from interface com.aelitis.azureus.core.networkmanager.impl.TransportHelper
TransportHelper.selectListener
 
Field Summary
static int CONNECT_TIMEOUT
           
static int MAX_PARTIAL_WRITE_RETAIN
           
static int READ_TIMEOUT
           
 
Constructor Summary
TCPTransportHelper(SocketChannel _channel)
           
 
Method Summary
 void cancelReadSelects()
           
 void cancelWriteSelects()
           
 void close(String reason)
           
 boolean delayWrite(ByteBuffer buffer)
           
 void failed(Throwable reason)
           
 InetSocketAddress getAddress()
           
 int getConnectTimeout()
           
 String getName(boolean verbose)
           
 int getReadTimeout()
           
 SocketChannel getSocketChannel()
           
 Object getUserData(Object key)
           
 boolean hasDelayedWrite()
           
 boolean isClosed()
           
 boolean minimiseOverheads()
           
 void pauseReadSelects()
           
 void pauseWriteSelects()
           
 int read(ByteBuffer buffer)
           
 long read(ByteBuffer[] buffers, int array_offset, int length)
           
 void registerForReadSelects(TransportHelper.selectListener listener, Object attachment)
           
 void registerForWriteSelects(TransportHelper.selectListener listener, Object attachment)
           
 void resumeReadSelects()
           
 void resumeWriteSelects()
           
 void setScatteringMode(long forBytes)
           
 void setTrace(boolean on)
           
 void setUserData(Object key, Object data)
           
 long write(ByteBuffer[] buffers, int array_offset, int length)
           
 int write(ByteBuffer buffer, boolean partial_write)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

READ_TIMEOUT

public static final int READ_TIMEOUT
See Also:
Constant Field Values

CONNECT_TIMEOUT

public static final int CONNECT_TIMEOUT
See Also:
Constant Field Values

MAX_PARTIAL_WRITE_RETAIN

public static final int MAX_PARTIAL_WRITE_RETAIN
See Also:
Constant Field Values
Constructor Detail

TCPTransportHelper

public TCPTransportHelper(SocketChannel _channel)
Method Detail

getAddress

public InetSocketAddress getAddress()
Specified by:
getAddress in interface TransportHelper

getName

public String getName(boolean verbose)
Specified by:
getName in interface TransportHelper

minimiseOverheads

public boolean minimiseOverheads()
Specified by:
minimiseOverheads in interface TransportHelper

getConnectTimeout

public int getConnectTimeout()
Specified by:
getConnectTimeout in interface TransportHelper

getReadTimeout

public int getReadTimeout()
Specified by:
getReadTimeout in interface TransportHelper

delayWrite

public boolean delayWrite(ByteBuffer buffer)
Specified by:
delayWrite in interface TransportHelper

hasDelayedWrite

public boolean hasDelayedWrite()
Specified by:
hasDelayedWrite in interface TransportHelper

write

public int write(ByteBuffer buffer,
                 boolean partial_write)
          throws IOException
Specified by:
write in interface TransportHelper
Throws:
IOException

write

public long write(ByteBuffer[] buffers,
                  int array_offset,
                  int length)
           throws IOException
Specified by:
write in interface TransportHelper
Throws:
IOException

read

public int read(ByteBuffer buffer)
         throws IOException
Specified by:
read in interface TransportHelper
Throws:
IOException

read

public long read(ByteBuffer[] buffers,
                 int array_offset,
                 int length)
          throws IOException
Specified by:
read in interface TransportHelper
Throws:
IOException

registerForReadSelects

public void registerForReadSelects(TransportHelper.selectListener listener,
                                   Object attachment)
Specified by:
registerForReadSelects in interface TransportHelper

registerForWriteSelects

public void registerForWriteSelects(TransportHelper.selectListener listener,
                                    Object attachment)
Specified by:
registerForWriteSelects in interface TransportHelper

cancelReadSelects

public void cancelReadSelects()
Specified by:
cancelReadSelects in interface TransportHelper

cancelWriteSelects

public void cancelWriteSelects()
Specified by:
cancelWriteSelects in interface TransportHelper

resumeReadSelects

public void resumeReadSelects()
Specified by:
resumeReadSelects in interface TransportHelper

resumeWriteSelects

public void resumeWriteSelects()
Specified by:
resumeWriteSelects in interface TransportHelper

pauseReadSelects

public void pauseReadSelects()
Specified by:
pauseReadSelects in interface TransportHelper

pauseWriteSelects

public void pauseWriteSelects()
Specified by:
pauseWriteSelects in interface TransportHelper

isClosed

public boolean isClosed()
Specified by:
isClosed in interface TransportHelper

close

public void close(String reason)
Specified by:
close in interface TransportHelper

failed

public void failed(Throwable reason)
Specified by:
failed in interface TransportHelper

getSocketChannel

public SocketChannel getSocketChannel()

setUserData

public void setUserData(Object key,
                        Object data)
Specified by:
setUserData in interface TransportHelper

getUserData

public Object getUserData(Object key)
Specified by:
getUserData in interface TransportHelper

setTrace

public void setTrace(boolean on)
Specified by:
setTrace in interface TransportHelper

setScatteringMode

public void setScatteringMode(long forBytes)
Specified by:
setScatteringMode in interface TransportHelper