Network status updates
- only update processed numbers once every 2 seconds - moved inventory lookups to the main inventory so now all storage modules work with it
This commit is contained in:
parent
d9e3349eeb
commit
e522f015a8
|
@ -49,17 +49,17 @@ class NetworkStatus(QtGui.QWidget, RetranslateMixin):
|
||||||
self.labelSyncStatus.setText(_translate("networkstatus", "Object(s) to be synced: %n", None, QtCore.QCoreApplication.CodecForTr, network.stats.pendingDownload() + network.stats.pendingUpload()))
|
self.labelSyncStatus.setText(_translate("networkstatus", "Object(s) to be synced: %n", None, QtCore.QCoreApplication.CodecForTr, network.stats.pendingDownload() + network.stats.pendingUpload()))
|
||||||
|
|
||||||
def updateNumberOfMessagesProcessed(self):
|
def updateNumberOfMessagesProcessed(self):
|
||||||
self.updateNumberOfObjectsToBeSynced()
|
# self.updateNumberOfObjectsToBeSynced()
|
||||||
self.labelMessageCount.setText(_translate(
|
self.labelMessageCount.setText(_translate(
|
||||||
"networkstatus", "Processed %n person-to-person message(s).", None, QtCore.QCoreApplication.CodecForTr, shared.numberOfMessagesProcessed))
|
"networkstatus", "Processed %n person-to-person message(s).", None, QtCore.QCoreApplication.CodecForTr, shared.numberOfMessagesProcessed))
|
||||||
|
|
||||||
def updateNumberOfBroadcastsProcessed(self):
|
def updateNumberOfBroadcastsProcessed(self):
|
||||||
self.updateNumberOfObjectsToBeSynced()
|
# self.updateNumberOfObjectsToBeSynced()
|
||||||
self.labelBroadcastCount.setText(_translate(
|
self.labelBroadcastCount.setText(_translate(
|
||||||
"networkstatus", "Processed %n broadcast message(s).", None, QtCore.QCoreApplication.CodecForTr, shared.numberOfBroadcastsProcessed))
|
"networkstatus", "Processed %n broadcast message(s).", None, QtCore.QCoreApplication.CodecForTr, shared.numberOfBroadcastsProcessed))
|
||||||
|
|
||||||
def updateNumberOfPubkeysProcessed(self):
|
def updateNumberOfPubkeysProcessed(self):
|
||||||
self.updateNumberOfObjectsToBeSynced()
|
# self.updateNumberOfObjectsToBeSynced()
|
||||||
self.labelPubkeyCount.setText(_translate(
|
self.labelPubkeyCount.setText(_translate(
|
||||||
"networkstatus", "Processed %n public key(s).", None, QtCore.QCoreApplication.CodecForTr, shared.numberOfPubkeysProcessed))
|
"networkstatus", "Processed %n public key(s).", None, QtCore.QCoreApplication.CodecForTr, shared.numberOfPubkeysProcessed))
|
||||||
|
|
||||||
|
@ -128,6 +128,9 @@ class NetworkStatus(QtGui.QWidget, RetranslateMixin):
|
||||||
Inventory().numberOfInventoryLookupsPerformed = 0
|
Inventory().numberOfInventoryLookupsPerformed = 0
|
||||||
self.updateNumberOfBytes()
|
self.updateNumberOfBytes()
|
||||||
self.updateNumberOfObjectsToBeSynced()
|
self.updateNumberOfObjectsToBeSynced()
|
||||||
|
self.updateNumberOfMessagesProcessed()
|
||||||
|
self.updateNumberOfBroadcastsProcessed()
|
||||||
|
self.updateNumberOfPubkeysProcessed()
|
||||||
|
|
||||||
def retranslateUi(self):
|
def retranslateUi(self):
|
||||||
super(QtGui.QWidget, self).retranslateUi()
|
super(QtGui.QWidget, self).retranslateUi()
|
||||||
|
|
|
@ -23,10 +23,13 @@ class Inventory():
|
||||||
self._className = "storage." + self._moduleName + "." + self._moduleName.title() + "Inventory"
|
self._className = "storage." + self._moduleName + "." + self._moduleName.title() + "Inventory"
|
||||||
self._inventoryClass = eval(self._className)
|
self._inventoryClass = eval(self._className)
|
||||||
self._realInventory = self._inventoryClass()
|
self._realInventory = self._inventoryClass()
|
||||||
|
self.numberOfInventoryLookupsPerformed = 0
|
||||||
|
|
||||||
# cheap inheritance copied from asyncore
|
# cheap inheritance copied from asyncore
|
||||||
def __getattr__(self, attr):
|
def __getattr__(self, attr):
|
||||||
try:
|
try:
|
||||||
|
if attr == "__contains__":
|
||||||
|
self.numberOfInventoryLookupsPerformed += 1
|
||||||
realRet = getattr(self._realInventory, attr)
|
realRet = getattr(self._realInventory, attr)
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
raise AttributeError("%s instance has no attribute '%s'" %(self.__class__.__name__, attr))
|
raise AttributeError("%s instance has no attribute '%s'" %(self.__class__.__name__, attr))
|
||||||
|
|
|
@ -15,7 +15,6 @@ class SqliteInventory(InventoryStorage):
|
||||||
|
|
||||||
def __contains__(self, hash):
|
def __contains__(self, hash):
|
||||||
with self.lock:
|
with self.lock:
|
||||||
self.numberOfInventoryLookupsPerformed += 1
|
|
||||||
if hash in self._inventory:
|
if hash in self._inventory:
|
||||||
return True
|
return True
|
||||||
return bool(sqlQuery('SELECT 1 FROM inventory WHERE hash=?', hash))
|
return bool(sqlQuery('SELECT 1 FROM inventory WHERE hash=?', hash))
|
||||||
|
|
Reference in New Issue
Block a user