com.aelitis.azureus.core.networkmanager.impl
Class SinglePeerUploader

java.lang.Object
  extended by com.aelitis.azureus.core.networkmanager.impl.SinglePeerUploader
All Implemented Interfaces:
RateControlledEntity

public class SinglePeerUploader
extends Object
implements RateControlledEntity

A fast write entity backed by a single peer connection.


Field Summary
 
Fields inherited from interface com.aelitis.azureus.core.networkmanager.impl.RateControlledEntity
PRIORITY_HIGH, PRIORITY_NORMAL
 
Constructor Summary
SinglePeerUploader(NetworkConnectionBase connection, RateHandler rate_handler)
           
 
Method Summary
 boolean canProcess(EventWaiter waiter)
          Is ready for a processing op.
 int doProcessing(EventWaiter waiter, int max_bytes)
          Attempt to do a processing operation.
 long getBytesReadyToWrite()
           
 int getConnectionCount(EventWaiter waiter)
          If there are no connections then the waiter will be kicked when a connection arrives
 int getPriority()
          Get this entity's priority level.
 boolean getPriorityBoost()
          stats functions
 RateHandler getRateHandler()
           
 int getReadyConnectionCount(EventWaiter waiter)
          The waiter is kicked if the ready condition changes
 String getString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SinglePeerUploader

public SinglePeerUploader(NetworkConnectionBase connection,
                          RateHandler rate_handler)
Method Detail

getRateHandler

public RateHandler getRateHandler()
Specified by:
getRateHandler in interface RateControlledEntity

canProcess

public boolean canProcess(EventWaiter waiter)
Description copied from interface: RateControlledEntity
Is ready for a processing op.

Specified by:
canProcess in interface RateControlledEntity
Returns:
true if it can process >0 bytes, false if not ready

doProcessing

public int doProcessing(EventWaiter waiter,
                        int max_bytes)
Description copied from interface: RateControlledEntity
Attempt to do a processing operation.

Specified by:
doProcessing in interface RateControlledEntity
Returns:
true if >0 bytes were processed (success), false if 0 bytes were processed (failure)

getPriority

public int getPriority()
Description copied from interface: RateControlledEntity
Get this entity's priority level.

Specified by:
getPriority in interface RateControlledEntity
Returns:
priority

getPriorityBoost

public boolean getPriorityBoost()
Description copied from interface: RateControlledEntity
stats functions

Specified by:
getPriorityBoost in interface RateControlledEntity
Returns:

getBytesReadyToWrite

public long getBytesReadyToWrite()
Specified by:
getBytesReadyToWrite in interface RateControlledEntity

getConnectionCount

public int getConnectionCount(EventWaiter waiter)
Description copied from interface: RateControlledEntity
If there are no connections then the waiter will be kicked when a connection arrives

Specified by:
getConnectionCount in interface RateControlledEntity
Returns:

getReadyConnectionCount

public int getReadyConnectionCount(EventWaiter waiter)
Description copied from interface: RateControlledEntity
The waiter is kicked if the ready condition changes

Specified by:
getReadyConnectionCount in interface RateControlledEntity
Returns:

getString

public String getString()
Specified by:
getString in interface RateControlledEntity