comparison sat_frontends/bridge/dbus_bridge.py @ 3163:d10b2368684e

bridge: added methods to let frontends store/retrieve/delete private data
author Goffi <goffi@goffi.org>
date Mon, 10 Feb 2020 22:01:53 +0100
parents 830fce0db15d
children 439e2f88c3a9
comparison
equal deleted inserted replaced
3162:b5c058c7692e 3163:d10b2368684e
638 if callback is not None: 638 if callback is not None:
639 kwargs['timeout'] = const_TIMEOUT 639 kwargs['timeout'] = const_TIMEOUT
640 kwargs['reply_handler'] = callback 640 kwargs['reply_handler'] = callback
641 kwargs['error_handler'] = error_handler 641 kwargs['error_handler'] = error_handler
642 return self.db_core_iface.paramsRegisterApp(xml, security_limit, app, **kwargs) 642 return self.db_core_iface.paramsRegisterApp(xml, security_limit, app, **kwargs)
643
644 def privateDataDelete(self, namespace, key, arg_2, callback=None, errback=None):
645 if callback is None:
646 error_handler = None
647 else:
648 if errback is None:
649 errback = log.error
650 error_handler = lambda err:errback(dbus_to_bridge_exception(err))
651 return self.db_core_iface.privateDataDelete(namespace, key, arg_2, timeout=const_TIMEOUT, reply_handler=callback, error_handler=error_handler)
652
653 def privateDataGet(self, namespace, key, profile_key, callback=None, errback=None):
654 if callback is None:
655 error_handler = None
656 else:
657 if errback is None:
658 errback = log.error
659 error_handler = lambda err:errback(dbus_to_bridge_exception(err))
660 return str(self.db_core_iface.privateDataGet(namespace, key, profile_key, timeout=const_TIMEOUT, reply_handler=callback, error_handler=error_handler))
661
662 def privateDataSet(self, namespace, key, data, profile_key, callback=None, errback=None):
663 if callback is None:
664 error_handler = None
665 else:
666 if errback is None:
667 errback = log.error
668 error_handler = lambda err:errback(dbus_to_bridge_exception(err))
669 return self.db_core_iface.privateDataSet(namespace, key, data, profile_key, timeout=const_TIMEOUT, reply_handler=callback, error_handler=error_handler)
643 670
644 def profileCreate(self, profile, password='', component='', callback=None, errback=None): 671 def profileCreate(self, profile, password='', component='', callback=None, errback=None):
645 if callback is None: 672 if callback is None:
646 error_handler = None 673 error_handler = None
647 else: 674 else:
1224 reply_handler = lambda ret=None: loop.call_soon_threadsafe(fut.set_result, ret) 1251 reply_handler = lambda ret=None: loop.call_soon_threadsafe(fut.set_result, ret)
1225 error_handler = lambda err: loop.call_soon_threadsafe(fut.set_exception, dbus_to_bridge_exception(err)) 1252 error_handler = lambda err: loop.call_soon_threadsafe(fut.set_exception, dbus_to_bridge_exception(err))
1226 self.db_core_iface.paramsRegisterApp(xml, security_limit, app, timeout=const_TIMEOUT, reply_handler=reply_handler, error_handler=error_handler) 1253 self.db_core_iface.paramsRegisterApp(xml, security_limit, app, timeout=const_TIMEOUT, reply_handler=reply_handler, error_handler=error_handler)
1227 return fut 1254 return fut
1228 1255
1256 def privateDataDelete(self, namespace, key, arg_2):
1257 loop = asyncio.get_running_loop()
1258 fut = loop.create_future()
1259 reply_handler = lambda ret=None: loop.call_soon_threadsafe(fut.set_result, ret)
1260 error_handler = lambda err: loop.call_soon_threadsafe(fut.set_exception, dbus_to_bridge_exception(err))
1261 self.db_core_iface.privateDataDelete(namespace, key, arg_2, timeout=const_TIMEOUT, reply_handler=reply_handler, error_handler=error_handler)
1262 return fut
1263
1264 def privateDataGet(self, namespace, key, profile_key):
1265 loop = asyncio.get_running_loop()
1266 fut = loop.create_future()
1267 reply_handler = lambda ret=None: loop.call_soon_threadsafe(fut.set_result, ret)
1268 error_handler = lambda err: loop.call_soon_threadsafe(fut.set_exception, dbus_to_bridge_exception(err))
1269 self.db_core_iface.privateDataGet(namespace, key, profile_key, timeout=const_TIMEOUT, reply_handler=reply_handler, error_handler=error_handler)
1270 return fut
1271
1272 def privateDataSet(self, namespace, key, data, profile_key):
1273 loop = asyncio.get_running_loop()
1274 fut = loop.create_future()
1275 reply_handler = lambda ret=None: loop.call_soon_threadsafe(fut.set_result, ret)
1276 error_handler = lambda err: loop.call_soon_threadsafe(fut.set_exception, dbus_to_bridge_exception(err))
1277 self.db_core_iface.privateDataSet(namespace, key, data, profile_key, timeout=const_TIMEOUT, reply_handler=reply_handler, error_handler=error_handler)
1278 return fut
1279
1229 def profileCreate(self, profile, password='', component=''): 1280 def profileCreate(self, profile, password='', component=''):
1230 loop = asyncio.get_running_loop() 1281 loop = asyncio.get_running_loop()
1231 fut = loop.create_future() 1282 fut = loop.create_future()
1232 reply_handler = lambda ret=None: loop.call_soon_threadsafe(fut.set_result, ret) 1283 reply_handler = lambda ret=None: loop.call_soon_threadsafe(fut.set_result, ret)
1233 error_handler = lambda err: loop.call_soon_threadsafe(fut.set_exception, dbus_to_bridge_exception(err)) 1284 error_handler = lambda err: loop.call_soon_threadsafe(fut.set_exception, dbus_to_bridge_exception(err))