"Run waydroid {} -h for usage information.".format(args.action))
elif args.action == "prop":
if args.subaction == "get":
- ret = helpers.props.get(args, args.key)
- if ret:
- print(ret)
+ actions.prop.get(args)
elif args.subaction == "set":
- helpers.props.set(args, args.key, args.value)
+ actions.prop.set(args)
else:
logging.info(
"Run waydroid {} -h for usage information.".format(args.action))
from tools.actions.container_manager import start, stop, freeze, unfreeze
from tools.actions.app_manager import install, remove, launch, list
from tools.actions.status import print_status
+from tools.actions.prop import get, set
--- /dev/null
+import logging
+import tools.helpers.props
+import tools.helpers.ipc
+import dbus
+
+def get(args):
+ try:
+ tools.helpers.ipc.DBusSessionService()
+
+ cm = tools.helpers.ipc.DBusContainerService()
+ session = cm.GetSession()
+ if session["state"] == "FROZEN":
+ cm.Unfreeze()
+
+ ret = tools.helpers.props.get(args, args.key)
+ if ret:
+ print(ret)
+
+ if session["state"] == "FROZEN":
+ cm.Freeze()
+ except (dbus.DBusException, KeyError):
+ logging.error("WayDroid session is stopped")
+
+def set(args):
+ try:
+ tools.helpers.ipc.DBusSessionService()
+
+ cm = tools.helpers.ipc.DBusContainerService()
+ session = cm.GetSession()
+ if session["state"] == "FROZEN":
+ cm.Unfreeze()
+
+ helpers.props.set(args, args.key, args.value)
+
+ if session["state"] == "FROZEN":
+ cm.Freeze()
+ except (dbus.DBusException, KeyError):
+ logging.error("WayDroid session is stopped")