org.gudy.azureus2.pluginsimpl.local.peers
Class PeerStatsImpl

java.lang.Object
  extended by org.gudy.azureus2.pluginsimpl.local.peers.PeerStatsImpl
All Implemented Interfaces:
PeerStats

public class PeerStatsImpl
extends java.lang.Object
implements PeerStats


Constructor Summary
PeerStatsImpl(PeerManagerImpl _peer_manager, Peer _owner, PEPeerStats _delegate)
           
 
Method Summary
 void discarded(int bytes)
          The given number of bytes received from the peer were discarded.
 PEPeerStats getDelegate()
           
 int getDownloadAverage()
          Get the the average bytes-per-second speed that we are receiving piece data from the peer.
 int getDownloadRateLimit()
           
 long getOverallBytesRemaining()
           
 int getPermittedBytesToReceive()
          For an external process receiving bytes on behalf of this peer this gives the current rate-limited number of bytes that can be received.
 int getPermittedBytesToSend()
          For an external process sending bytes on behalf of this peer this gives the current rate-limited number of bytes that can be sent.
 int getReception()
          Get the the longer-average bytes-per-second speed at which the peer is uploading data to us.
 int getStatisticSentAverage()
          Get the estimated total upload rate of the peer.
 long getTimeSinceConnectionEstablished()
          Get the amount of time that has elapsed since the connection with the peer has been established.
 int getTotalAverage()
          Get the estimated total download rate of the peer.
 long getTotalDiscarded()
          Get the total number of discarded bytes received from the peer.
 long getTotalReceived()
          Get the total number of data (payload) bytes received from the peer.
 long getTotalSent()
          Get the total number of data (payload) bytes sent to the peer.
 int getUploadAverage()
          Get the the average bytes-per-second speed that we are sending piece data to the peer.
 int getUploadRateLimit()
           
 void permittedReceiveBytesUsed(int bytes)
           
 void permittedSendBytesUsed(int bytes)
           
 void received(int bytes)
          The given number of data (payload) bytes have been sent to the peer.
 void sent(int bytes)
          The given number of data (payload) bytes have been received from the peer.
 void setDownloadRateLimit(int bytes)
           
 void setUploadRateLimit(int bytes)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PeerStatsImpl

public PeerStatsImpl(PeerManagerImpl _peer_manager,
                     Peer _owner,
                     PEPeerStats _delegate)
Method Detail

getDelegate

public PEPeerStats getDelegate()

getDownloadAverage

public int getDownloadAverage()
Description copied from interface: PeerStats
Get the the average bytes-per-second speed that we are receiving piece data from the peer.

Specified by:
getDownloadAverage in interface PeerStats
Returns:
average speed.

getReception

public int getReception()
Description copied from interface: PeerStats
Get the the longer-average bytes-per-second speed at which the peer is uploading data to us.

Specified by:
getReception in interface PeerStats
Returns:
average speed

getUploadAverage

public int getUploadAverage()
Description copied from interface: PeerStats
Get the the average bytes-per-second speed that we are sending piece data to the peer.

Specified by:
getUploadAverage in interface PeerStats
Returns:
average speed.

getTotalAverage

public int getTotalAverage()
Description copied from interface: PeerStats
Get the estimated total download rate of the peer.

Specified by:
getTotalAverage in interface PeerStats
Returns:
estimated rate in bytes-per-second

getTotalDiscarded

public long getTotalDiscarded()
Description copied from interface: PeerStats
Get the total number of discarded bytes received from the peer.

Specified by:
getTotalDiscarded in interface PeerStats
Returns:
total discarded

getTotalSent

public long getTotalSent()
Description copied from interface: PeerStats
Get the total number of data (payload) bytes sent to the peer.

Specified by:
getTotalSent in interface PeerStats
Returns:
total

getTotalReceived

public long getTotalReceived()
Description copied from interface: PeerStats
Get the total number of data (payload) bytes received from the peer.

Specified by:
getTotalReceived in interface PeerStats
Returns:
total

getStatisticSentAverage

public int getStatisticSentAverage()
Description copied from interface: PeerStats
Get the estimated total upload rate of the peer.

Specified by:
getStatisticSentAverage in interface PeerStats
Returns:
estimated rate in bytes-per-second

getPermittedBytesToReceive

public int getPermittedBytesToReceive()
Description copied from interface: PeerStats
For an external process receiving bytes on behalf of this peer this gives the current rate-limited number of bytes that can be received. Update with actual send using 'permittedReceiveBytesUsed' below.

Specified by:
getPermittedBytesToReceive in interface PeerStats
Returns:

permittedReceiveBytesUsed

public void permittedReceiveBytesUsed(int bytes)
Specified by:
permittedReceiveBytesUsed in interface PeerStats

getPermittedBytesToSend

public int getPermittedBytesToSend()
Description copied from interface: PeerStats
For an external process sending bytes on behalf of this peer this gives the current rate-limited number of bytes that can be sent. Update with actual send using 'sent' below.

Specified by:
getPermittedBytesToSend in interface PeerStats
Returns:

permittedSendBytesUsed

public void permittedSendBytesUsed(int bytes)
Specified by:
permittedSendBytesUsed in interface PeerStats

received

public void received(int bytes)
Description copied from interface: PeerStats
The given number of data (payload) bytes have been sent to the peer. This number gets added to the total and is used to calculate the rate.

Use this if you are talking to the peer outside of Azureus' API, and want your stats added into Azureus'

Specified by:
received in interface PeerStats

sent

public void sent(int bytes)
Description copied from interface: PeerStats
The given number of data (payload) bytes have been received from the peer. This number gets added to the total and is used to calculate the rate.

Use this if you are talking to the peer outside of Azureus' API, and want your stats added into Azureus'

Specified by:
sent in interface PeerStats

discarded

public void discarded(int bytes)
Description copied from interface: PeerStats
The given number of bytes received from the peer were discarded. This number gets added to the total and is used to calculate rates that include disgarded inforamtion.

Use this if you are talking to the peer outside of Azureus' API, and want your stats added into Azureus'

Specified by:
discarded in interface PeerStats

getTimeSinceConnectionEstablished

public long getTimeSinceConnectionEstablished()
Description copied from interface: PeerStats
Get the amount of time that has elapsed since the connection with the peer has been established.

Specified by:
getTimeSinceConnectionEstablished in interface PeerStats
Returns:
Amount of time in ms.

getDownloadRateLimit

public int getDownloadRateLimit()
Specified by:
getDownloadRateLimit in interface PeerStats

setDownloadRateLimit

public void setDownloadRateLimit(int bytes)
Specified by:
setDownloadRateLimit in interface PeerStats

getUploadRateLimit

public int getUploadRateLimit()
Specified by:
getUploadRateLimit in interface PeerStats

setUploadRateLimit

public void setUploadRateLimit(int bytes)
Specified by:
setUploadRateLimit in interface PeerStats

getOverallBytesRemaining

public long getOverallBytesRemaining()
Specified by:
getOverallBytesRemaining in interface PeerStats
Returns: