'Returns a list of dictionaries, one for each connected peer
containing the statistics for that peer. In particular, the
dictionary contains the keys:
<pre>
\'id\' = PeerID or \'http seed\'
\'extended_version\' = Peer client version, as received during the extend handshake message
\'ip\' = IP address as string or URL of httpseed
\'port\' = Port
\'pex_received\' = True/False
\'optimistic\' = True/False
\'direction\' = \'L\'/\'R\' (outgoing/incoming)
\'uprate\' = Upload rate in KB/s
\'uinterested\' = Upload Interested: True/False
\'uchoked\' = Upload Choked: True/False
\'uhasqueries\' = Upload has requests in buffer and not choked
\'uflushed\' = Upload is not flushed
\'downrate\' = Download rate in KB/s
\'dinterested\' = Download interested: True/Flase
\'dchoked\' = Download choked: True/False
\'snubbed\' = Download snubbed: True/False
\'utotal\' = Total uploaded from peer in KB
\'dtotal\' = Total downloaded from peer in KB
\'completed\' = Fraction of download completed by peer (0-1.0)
-- QUESTION(lipu): swift and Bitfield are gone. Does this \'have\' thing has anything to do with swift?
\'have\' = Bitfield object for this peer if not complete
\'speed\' = The peer\'s current total download speed (estimated)
</pre>'

def get_peerlist(self):

    if ((self.stats is None) or ('spew' not in self.stats) or (self.stats['spew'] is None)):
        return []
    else:
        return self.stats['spew']
