Philipp Hörist pushed to branch master at gajim / python-nbxmpp
Commits:
0414d956 by lovetox at 2021-03-21T21:28:12+01:00
Add log_calls decorator
- - - - -
d2e8aae7 by lovetox at 2021-03-21T21:29:05+01:00
Presence: Fix sending presence
- - - - -
98216410 by lovetox at 2021-03-21T21:29:23+01:00
Presence: Use log_calls decorator
- - - - -
2 changed files:
- nbxmpp/modules/presence.py
- nbxmpp/modules/util.py
Changes:
=====================================
nbxmpp/modules/presence.py
=====================================
@@ -25,6 +25,7 @@ from nbxmpp.util import error_factory
from nbxmpp.const import PresenceType
from nbxmpp.const import PresenceShow
from nbxmpp.modules.base import BaseModule
+from nbxmpp.modules.util import log_calls
class BasePresence(BaseModule):
@@ -93,15 +94,19 @@ class BasePresence(BaseModule):
self._log.warning(stanza)
return PresenceShow.ONLINE
+ @log_calls
def unsubscribe(self, jid):
self.send(jid=jid, typ='unsubscribe')
+ @log_calls
def unsubscribed(self, jid):
self.send(jid=jid, typ='unsubscribed')
+ @log_calls
def subscribed(self, jid):
self.send(jid=jid, typ='subscribed')
+ @log_calls
def subscribe(self, jid, status=None, nick=None):
self.send(jid=jid, typ='subscribe', status=status, nick=nick)
@@ -150,4 +155,4 @@ class BasePresence(BaseModule):
for node in extend:
presence.addChild(node=node)
- self._con.send_stanza(presence)
+ self._client.send_stanza(presence)
=====================================
nbxmpp/modules/util.py
=====================================
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with this program; If not, see <http://www.gnu.org/licenses/>.
+import logging
+import functools
import inspect
from urllib.parse import urlparse
from urllib.parse import unquote
@@ -75,3 +77,12 @@ def make_func_arguments_string(func, self, args, kwargs):
arg_string += f'{name}={arg}, '
arg_string = arg_string[:-2]
return f'{func.__name__}({arg_string})'
+
+
+def log_calls(func):
+ @functools.wraps(func)
+ def func_wrapper(self, *args, **kwargs):
+ if self._log.isEnabledFor(logging.INFO):
+ self._log.info(make_func_arguments_string(func, self, args,
kwargs))
+ return func(self, *args, **kwargs)
+ return func_wrapper
View it on GitLab:
https://dev.gajim.org/gajim/python-nbxmpp/-/compare/0c0d9c205f4167273b850099b7616e4effa01c33...9821641065f63e23eb7b8499de03be8f8a0d73fb
--
View it on GitLab:
https://dev.gajim.org/gajim/python-nbxmpp/-/compare/0c0d9c205f4167273b850099b7616e4effa01c33...9821641065f63e23eb7b8499de03be8f8a0d73fb
You're receiving this email because of your account on dev.gajim.org.
_______________________________________________
Commits mailing list
[email protected]
https://lists.gajim.org/cgi-bin/listinfo/commits