com.aelitis.azureus.core.networkmanager.impl.udp
Class UDPTransportHelper

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

public class UDPTransportHelper
extends java.lang.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 READ_TIMEOUT
           
 
Constructor Summary
UDPTransportHelper(UDPConnectionManager _manager, java.net.InetSocketAddress _address, UDPConnection _connection)
           
UDPTransportHelper(UDPConnectionManager _manager, java.net.InetSocketAddress _address, UDPTransport _transport)
           
 
Method Summary
 void cancelReadSelects()
           
 void cancelWriteSelects()
           
protected  void canRead()
           
protected  void canWrite()
           
 void close(java.lang.String reason)
           
 boolean delayWrite(java.nio.ByteBuffer buffer)
           
 void failed(java.lang.Throwable reason)
           
protected  void fireReadSelect()
           
protected  void fireWriteSelect()
           
 java.net.InetSocketAddress getAddress()
           
protected  UDPConnection getConnection()
           
 int getConnectTimeout()
           
protected  int getMss()
           
 java.lang.String getName(boolean verbose)
           
 int getReadTimeout()
           
protected  UDPTransport getTransport()
           
 java.lang.Object getUserData(java.lang.Object key)
           
 boolean hasDelayedWrite()
           
 boolean isClosed()
           
 boolean isIncoming()
           
 boolean minimiseOverheads()
           
 void pauseReadSelects()
           
 void pauseWriteSelects()
           
protected  void poll()
           
 int read(java.nio.ByteBuffer buffer)
           
 long read(java.nio.ByteBuffer[] buffers, int array_offset, int length)
           
 void registerForReadSelects(TransportHelper.selectListener listener, java.lang.Object attachment)
           
 void registerForWriteSelects(TransportHelper.selectListener listener, java.lang.Object attachment)
           
 void resumeReadSelects()
           
 void resumeWriteSelects()
           
 void setScatteringMode(long forBytes)
           
 void setTrace(boolean on)
           
protected  void setTransport(UDPTransport _transport)
           
 void setUserData(java.lang.Object key, java.lang.Object data)
           
 long write(java.nio.ByteBuffer[] buffers, int array_offset, int length)
           
 int write(java.nio.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
Constructor Detail

UDPTransportHelper

public UDPTransportHelper(UDPConnectionManager _manager,
                          java.net.InetSocketAddress _address,
                          UDPTransport _transport)
                   throws java.io.IOException
Throws:
java.io.IOException

UDPTransportHelper

public UDPTransportHelper(UDPConnectionManager _manager,
                          java.net.InetSocketAddress _address,
                          UDPConnection _connection)
Method Detail

setTransport

protected void setTransport(UDPTransport _transport)

getTransport

protected UDPTransport getTransport()

getMss

protected int getMss()

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

getAddress

public java.net.InetSocketAddress getAddress()
Specified by:
getAddress in interface TransportHelper

getName

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

isIncoming

public boolean isIncoming()

getConnection

protected UDPConnection getConnection()

delayWrite

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

hasDelayedWrite

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

write

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

write

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

read

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

read

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

canRead

protected void canRead()

canWrite

protected void canWrite()

pauseReadSelects

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

pauseWriteSelects

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

resumeReadSelects

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

resumeWriteSelects

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

registerForReadSelects

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

registerForWriteSelects

public void registerForWriteSelects(TransportHelper.selectListener listener,
                                    java.lang.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

fireReadSelect

protected void fireReadSelect()

fireWriteSelect

protected void fireWriteSelect()

failed

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

isClosed

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

close

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

poll

protected void poll()

setUserData

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

getUserData

public java.lang.Object getUserData(java.lang.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