From e24e2f58d4e9c71ef005a4dfe88abac7bff1cc6b Mon Sep 17 00:00:00 2001 From: mathieui Date: Sun, 14 Feb 2021 11:57:25 +0100 Subject: XEP-0128: API changes - ``set_extended_info``, ``add_extended_info`` and ``del_extended_info`` return Futures. --- slixmpp/plugins/xep_0128/extended_disco.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'slixmpp/plugins/xep_0128') diff --git a/slixmpp/plugins/xep_0128/extended_disco.py b/slixmpp/plugins/xep_0128/extended_disco.py index d0264caf..759e5efe 100644 --- a/slixmpp/plugins/xep_0128/extended_disco.py +++ b/slixmpp/plugins/xep_0128/extended_disco.py @@ -5,6 +5,7 @@ # See the file LICENSE for copying permission. import logging +from asyncio import Future from typing import Optional import slixmpp @@ -53,37 +54,46 @@ class XEP_0128(BasePlugin): for op in self._disco_ops: self.api.register(getattr(self.static, op), op, default=True) - def set_extended_info(self, jid=None, node=None, **kwargs): + def set_extended_info(self, jid=None, node=None, **kwargs) -> Future: """ Set additional, extended identity information to a node. Replaces any existing extended information. + .. versionchanged:: 1.8.0 + This function now returns a Future. + :param jid: The JID to modify. :param node: The node to modify. :param data: Either a form, or a list of forms to use as extended information, replacing any existing extensions. """ - self.api['set_extended_info'](jid, node, None, kwargs) + return self.api['set_extended_info'](jid, node, None, kwargs) - def add_extended_info(self, jid=None, node=None, **kwargs): + def add_extended_info(self, jid=None, node=None, **kwargs) -> Future: """ Add additional, extended identity information to a node. + .. versionchanged:: 1.8.0 + This function now returns a Future. + :param jid: The JID to modify. :param node: The node to modify. :param data: Either a form, or a list of forms to add as extended information. """ - self.api['add_extended_info'](jid, node, None, kwargs) + return self.api['add_extended_info'](jid, node, None, kwargs) def del_extended_info(self, jid: Optional[JID] = None, - node: Optional[str] = None, **kwargs): + node: Optional[str] = None, **kwargs) -> Future: """ Remove all extended identity information to a node. + .. versionchanged:: 1.8.0 + This function now returns a Future. + :param jid: The JID to modify. :param node: The node to modify. """ - self.api['del_extended_info'](jid, node, None, kwargs) + return self.api['del_extended_info'](jid, node, None, kwargs) -- cgit v1.2.3