Mercurial > libervia-backend
diff libervia/backend/plugins/plugin_exp_pubsub_admin.py @ 4270:0d7bb4df2343
Reformatted code base using black.
author | Goffi <goffi@goffi.org> |
---|---|
date | Wed, 19 Jun 2024 18:44:57 +0200 |
parents | 4b842c1fb686 |
children |
line wrap: on
line diff
--- a/libervia/backend/plugins/plugin_exp_pubsub_admin.py Tue Jun 18 12:06:45 2024 +0200 +++ b/libervia/backend/plugins/plugin_exp_pubsub_admin.py Wed Jun 19 18:44:57 2024 +0200 @@ -37,9 +37,11 @@ C.PI_RECOMMENDATIONS: [], C.PI_MAIN: "PubsubAdmin", C.PI_HANDLER: "no", - C.PI_DESCRIPTION: _("""\Implementation of Pubsub Administrator + C.PI_DESCRIPTION: _( + """\Implementation of Pubsub Administrator This allows a pubsub administrator to overwrite completly items, including publisher. -Specially useful when importing a node."""), +Specially useful when importing a node.""" + ), } NS_PUBSUB_ADMIN = "https://salut-a-toi.org/spec/pubsub_admin:0" @@ -58,35 +60,36 @@ async_=True, ) - def _publish(self, service, nodeIdentifier, items, extra=None, - profile_key=C.PROF_KEY_NONE): + def _publish( + self, service, nodeIdentifier, items, extra=None, profile_key=C.PROF_KEY_NONE + ): client = self.host.get_client(profile_key) service = None if not service else jid.JID(service) extra = data_format.deserialise(extra) - items = [generic.parseXml(i.encode('utf-8')) for i in items] - return self.publish( - client, service, nodeIdentifier, items, extra - ) + items = [generic.parseXml(i.encode("utf-8")) for i in items] + return self.publish(client, service, nodeIdentifier, items, extra) def _send_cb(self, iq_result): publish_elt = iq_result.admin.pubsub.publish ids = [] - for item_elt in publish_elt.elements(pubsub.NS_PUBSUB, 'item'): - ids.append(item_elt['id']) + for item_elt in publish_elt.elements(pubsub.NS_PUBSUB, "item"): + ids.append(item_elt["id"]) return ids def publish(self, client, service, nodeIdentifier, items, extra=None): for item in items: - if item.name != 'item' or item.uri != pubsub.NS_PUBSUB: + if item.name != "item" or item.uri != pubsub.NS_PUBSUB: raise exceptions.DataError( - 'Invalid element, a pubsub item is expected: {xml}'.format( - xml=item.toXml())) + "Invalid element, a pubsub item is expected: {xml}".format( + xml=item.toXml() + ) + ) iq_elt = client.IQ() - iq_elt['to'] = service.full() if service else client.jid.userhost() - admin_elt = iq_elt.addElement((NS_PUBSUB_ADMIN, 'admin')) - pubsub_elt = admin_elt.addElement((pubsub.NS_PUBSUB, 'pubsub')) - publish_elt = pubsub_elt.addElement('publish') - publish_elt['node'] = nodeIdentifier + iq_elt["to"] = service.full() if service else client.jid.userhost() + admin_elt = iq_elt.addElement((NS_PUBSUB_ADMIN, "admin")) + pubsub_elt = admin_elt.addElement((pubsub.NS_PUBSUB, "pubsub")) + publish_elt = pubsub_elt.addElement("publish") + publish_elt["node"] = nodeIdentifier for item in items: publish_elt.addChild(item) d = iq_elt.send()