def _background(meta, oauth, dialog, builder):
try:
cert, key = create_keypair(oauth, meta.api_base_uri)
meta.cert = cert
meta.key = key
meta.config = get_profile_config(oauth, meta.api_base_uri, meta.profile_id)
except Exception as e:
GLib.idle_add(lambda: error_helper(dialog, "can't finalize configuration", "{}: {}".format(type(e).__name__,
str(e))))
GLib.idle_add(lambda: dialog.hide())
raise
else:
try:
uuid = store_provider(meta)
monitor_vpn(uuid=uuid, callback=lambda *args, **kwargs: vpn_change(builder=builder))
GLib.idle_add(lambda: notify("eduVPN provider added", "added provider '{}'".format(meta.display_name)))
except Exception as e:
GLib.idle_add(lambda: error_helper(dialog, "can't store configuration", "{} {}".format(type(e).__name__,
str(e))))
GLib.idle_add(lambda: dialog.hide())
raise
else:
GLib.idle_add(lambda: dialog.hide())
GLib.idle_add(lambda: update_providers(builder))
评论列表
文章目录