changeset 3850:4479f6074bc8

component AP gateway: use the new `priority` argument of `addManagedNode`: priority is needed because we'll need to inspect former items on retract to check the Acitivy to use (it may be an `Undo` activity is some cases), and this must be done before the cache is updated by pubsub cache plugin. rel 370
author Goffi <goffi@goffi.org>
date Thu, 14 Jul 2022 12:55:30 +0200
parents bc24ce903835
children ef824b1091f3
files sat/plugins/plugin_comp_ap_gateway/__init__.py
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/sat/plugins/plugin_comp_ap_gateway/__init__.py	Thu Jul 14 12:55:30 2022 +0200
+++ b/sat/plugins/plugin_comp_ap_gateway/__init__.py	Thu Jul 14 12:55:30 2022 +0200
@@ -132,7 +132,12 @@
         self._t = host.plugins["TEXT_SYNTAXES"]
         self._i = host.plugins["IDENTITY"]
         self._p.addManagedNode(
-            "", items_cb=self._itemsReceived
+            "",
+            items_cb=self._itemsReceived,
+            # we want to be sure that the callbacks are launched before pubsub cache's
+            # one, as we need to inspect items before they are actually removed from cache
+            # or updated
+            priority=1000
         )
         self.pubsub_service = APPubsubService(self)
         host.trigger.add("messageReceived", self._messageReceivedTrigger, priority=-1000)