diff sat/bridge/bridge_constructor/constructors/pb/constructor.py @ 3039:a1bc34f90fa5

bridge (pb): implemented an asyncio compatible bridge: `pb` bridge can now be used with asyncio by instantiating AIOBridge.
author Goffi <goffi@goffi.org>
date Wed, 25 Sep 2019 08:53:38 +0200
parents ab2696e34d29
children 9d0df638c8b4
line wrap: on
line diff
--- a/sat/bridge/bridge_constructor/constructors/pb/constructor.py	Wed Sep 25 08:41:36 2019 +0200
+++ b/sat/bridge/bridge_constructor/constructors/pb/constructor.py	Wed Sep 25 08:53:38 2019 +0200
@@ -40,7 +40,12 @@
             d.addCallback({callback})
         if errback is None:
             errback = self._generic_errback
-        d.addErrback(errback)\n"""
+        d.addErrback(errback)\n""",
+        "async_methods": """\
+    def {name}(self{args_comma}{args}):
+        {debug}d = self.root.callRemote("{name}"{args_comma}{args_no_def})
+        d.addErrback(self._errback)
+        return d.asFuture(asyncio.get_event_loop())\n""",
     }
 
     def core_completion_signal(self, completion, function, default, arg_doc, async_):