mirror of
https://github.com/markqvist/LXMF.git
synced 2025-05-22 15:51:44 -04:00
Improved error handling
This commit is contained in:
parent
323241a4b8
commit
ece55d10d6
2 changed files with 17 additions and 8 deletions
23
LXMF/LXMF.py
23
LXMF/LXMF.py
|
@ -339,15 +339,21 @@ class LXMessage:
|
|||
RNS.log("Received delivery notification for "+str(self), RNS.LOG_DEBUG)
|
||||
self.state = LXMessage.DELIVERED
|
||||
|
||||
if self.__delivery_callback != None:
|
||||
self.__delivery_callback(self)
|
||||
if self.__delivery_callback != None and callable(self.__delivery_callback):
|
||||
try:
|
||||
self.__delivery_callback(self)
|
||||
except Exception as e:
|
||||
RNS.log("An error occurred in the external delivery callback for "+str(message), RNS.LOG_ERROR)
|
||||
|
||||
def __mark_propagated(self, receipt = None):
|
||||
RNS.log("Received propagation success notification for "+str(self), RNS.LOG_DEBUG)
|
||||
self.state = LXMessage.SENT
|
||||
|
||||
if self.__delivery_callback != None:
|
||||
self.__delivery_callback(self)
|
||||
if self.__delivery_callback != None and callable(self.__delivery_callback):
|
||||
try:
|
||||
self.__delivery_callback(self)
|
||||
except Exception as e:
|
||||
RNS.log("An error occurred in the external delivery callback for "+str(message), RNS.LOG_ERROR)
|
||||
|
||||
def __resource_concluded(self, resource):
|
||||
if resource.status == RNS.Resource.COMPLETE:
|
||||
|
@ -1130,8 +1136,11 @@ class LXMRouter:
|
|||
message.transport_encrypted = False
|
||||
message.transport_encryption = None
|
||||
|
||||
if self.__delivery_callback != None:
|
||||
self.__delivery_callback(message)
|
||||
if self.__delivery_callback != None and callable(self.__delivery_callback):
|
||||
try:
|
||||
self.__delivery_callback(message)
|
||||
except Exception as e:
|
||||
RNS.log("An error occurred in the external delivery callback for "+str(message), RNS.LOG_ERROR)
|
||||
|
||||
return True
|
||||
|
||||
|
@ -1593,7 +1602,7 @@ class LXMRouter:
|
|||
self.failed_outbound.append(lxmessage)
|
||||
|
||||
lxmessage.state = LXMessage.FAILED
|
||||
if lxmessage.failed_callback != None:
|
||||
if lxmessage.failed_callback != None and callable(lxmessage.failed_callback):
|
||||
lxmessage.failed_callback(lxmessage)
|
||||
|
||||
def process_outbound(self, sender = None):
|
||||
|
|
2
setup.py
2
setup.py
|
@ -18,6 +18,6 @@ setuptools.setup(
|
|||
"License :: OSI Approved :: MIT License",
|
||||
"Operating System :: OS Independent",
|
||||
],
|
||||
install_requires=['rns>=0.3.4'],
|
||||
install_requires=['rns>=0.3.6'],
|
||||
python_requires='>=3.6',
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue