final pylint fixes (hopefuly)
This commit is contained in:
parent
693a3346d2
commit
e718caca77
2 changed files with 16 additions and 20 deletions
|
@ -408,7 +408,7 @@ max-branches=12
|
||||||
max-statements=50
|
max-statements=50
|
||||||
|
|
||||||
# Maximum number of parents for a class (see R0901).
|
# Maximum number of parents for a class (see R0901).
|
||||||
max-parents=7
|
max-parents=8
|
||||||
|
|
||||||
# Maximum number of attributes for a class (see R0902).
|
# Maximum number of attributes for a class (see R0902).
|
||||||
max-attributes=7
|
max-attributes=7
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
from six.moves import UserDict
|
from collections import UserDict
|
||||||
from . import constants
|
from . import constants
|
||||||
|
|
||||||
|
|
||||||
|
@ -9,17 +9,13 @@ class DictDataStore(UserDict):
|
||||||
def __init__(self, getTime=None):
|
def __init__(self, getTime=None):
|
||||||
# Dictionary format:
|
# Dictionary format:
|
||||||
# { <key>: (<contact>, <value>, <lastPublished>, <originallyPublished> <originalPublisherID>) }
|
# { <key>: (<contact>, <value>, <lastPublished>, <originallyPublished> <originalPublisherID>) }
|
||||||
self._dict = {}
|
super().__init__()
|
||||||
if not getTime:
|
if not getTime:
|
||||||
from twisted.internet import reactor
|
from twisted.internet import reactor
|
||||||
getTime = reactor.seconds
|
getTime = reactor.seconds
|
||||||
self._getTime = getTime
|
self._getTime = getTime
|
||||||
self.completed_blobs = set()
|
self.completed_blobs = set()
|
||||||
|
|
||||||
def keys(self):
|
|
||||||
""" Return a list of the keys in this data store """
|
|
||||||
return self._dict.keys()
|
|
||||||
|
|
||||||
def filter_bad_and_expired_peers(self, key):
|
def filter_bad_and_expired_peers(self, key):
|
||||||
"""
|
"""
|
||||||
Returns only non-expired and unknown/good peers
|
Returns only non-expired and unknown/good peers
|
||||||
|
@ -27,41 +23,41 @@ class DictDataStore(UserDict):
|
||||||
return filter(
|
return filter(
|
||||||
lambda peer:
|
lambda peer:
|
||||||
self._getTime() - peer[3] < constants.dataExpireTimeout and peer[0].contact_is_good is not False,
|
self._getTime() - peer[3] < constants.dataExpireTimeout and peer[0].contact_is_good is not False,
|
||||||
self._dict[key]
|
self[key]
|
||||||
)
|
)
|
||||||
|
|
||||||
def filter_expired_peers(self, key):
|
def filter_expired_peers(self, key):
|
||||||
"""
|
"""
|
||||||
Returns only non-expired peers
|
Returns only non-expired peers
|
||||||
"""
|
"""
|
||||||
return filter(lambda peer: self._getTime() - peer[3] < constants.dataExpireTimeout, self._dict[key])
|
return filter(lambda peer: self._getTime() - peer[3] < constants.dataExpireTimeout, self[key])
|
||||||
|
|
||||||
def removeExpiredPeers(self):
|
def removeExpiredPeers(self):
|
||||||
for key in self._dict.keys():
|
for key in self.keys():
|
||||||
unexpired_peers = self.filter_expired_peers(key)
|
unexpired_peers = self.filter_expired_peers(key)
|
||||||
if not unexpired_peers:
|
if not unexpired_peers:
|
||||||
del self._dict[key]
|
del self[key]
|
||||||
else:
|
else:
|
||||||
self._dict[key] = unexpired_peers
|
self[key] = unexpired_peers
|
||||||
|
|
||||||
def hasPeersForBlob(self, key):
|
def hasPeersForBlob(self, key):
|
||||||
return True if key in self._dict and len(tuple(self.filter_bad_and_expired_peers(key))) else False
|
return True if key in self and len(tuple(self.filter_bad_and_expired_peers(key))) else False
|
||||||
|
|
||||||
def addPeerToBlob(self, contact, key, compact_address, lastPublished, originallyPublished, originalPublisherID):
|
def addPeerToBlob(self, contact, key, compact_address, lastPublished, originallyPublished, originalPublisherID):
|
||||||
if key in self._dict:
|
if key in self:
|
||||||
if compact_address not in map(lambda store_tuple: store_tuple[1], self._dict[key]):
|
if compact_address not in map(lambda store_tuple: store_tuple[1], self[key]):
|
||||||
self._dict[key].append(
|
self[key].append(
|
||||||
(contact, compact_address, lastPublished, originallyPublished, originalPublisherID)
|
(contact, compact_address, lastPublished, originallyPublished, originalPublisherID)
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
self._dict[key] = [(contact, compact_address, lastPublished, originallyPublished, originalPublisherID)]
|
self[key] = [(contact, compact_address, lastPublished, originallyPublished, originalPublisherID)]
|
||||||
|
|
||||||
def getPeersForBlob(self, key):
|
def getPeersForBlob(self, key):
|
||||||
return [] if key not in self._dict else [val[1] for val in self.filter_bad_and_expired_peers(key)]
|
return [] if key not in self else [val[1] for val in self.filter_bad_and_expired_peers(key)]
|
||||||
|
|
||||||
def getStoringContacts(self):
|
def getStoringContacts(self):
|
||||||
contacts = set()
|
contacts = set()
|
||||||
for key in self._dict:
|
for key in self:
|
||||||
for values in self._dict[key]:
|
for values in self[key]:
|
||||||
contacts.add(values[0])
|
contacts.add(values[0])
|
||||||
return list(contacts)
|
return list(contacts)
|
||||||
|
|
Loading…
Reference in a new issue