virt-manager/002-60c7e778-xmlapi-add-set_prop.patch
Charles Arnold 2677655bda - jsc#SLE-6262, fate#327048: KVM: Boot Configuration Override
001-adf30349-cli-refactor-get_prop.patch
  002-60c7e778-xmlapi-add-set_prop.patch
  003-5bad22e8-tests-Use-get-set_prop.patch
  004-ee5f3eab-support-Add-SUPPORT_CONN_DEVICE_BOOT_ORDER.patch
  005-7768eb17-cli-Add-check-if-device-boot-order-is-supported.patch
  006-ecc0861c-tests-xmlparse-refactor-method-for-generating-out-file-path.patch
  007-c9d070da-guest-Add-reorder_boot_order-method.patch
  008-1b535940-tests-Add-test-case-for-reorder_boot_order-method.patch
  009-b83a0a61-cli-Use-reorder_boot_order-for-setting-the-boot-order.patch
  010-c896d19d-tests-cli-Add-boot.order-tests.patch
  011-29f9f2ac-virt-xml-Add-no-define-argument.patch
  012-c2bff509-tests-cli-Add-test-case-for-no-define-argument.patch
  013-90b1a3ab-virt-xml-Add-support-for-starting-the-domain.patch
  014-908b8e8d-tests-virt-xml-Add-test-cases-for-start-option.patch

OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=468
2019-05-23 15:40:50 +00:00

40 lines
1.2 KiB
Diff

References: jsc#SLE-6262, fate#327048: KVM: Boot Configuration Override (virt-manager)
Subject: xmlapi: add set_prop
From: Marc Hartmayer mhartmay@linux.ibm.com Tue Feb 26 10:56:32 2019 +0100
Date: Wed Mar 6 13:13:13 2019 -0500:
Git: 60c7e778e306c66af2690cafea076aba15a2b233
Introduce set_prop helper function. It will be used in the next patch.
Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Reviewed-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
diff --git a/virtinst/xmlapi.py b/virtinst/xmlapi.py
index 569e47f7..49ca0fa3 100644
--- a/virtinst/xmlapi.py
+++ b/virtinst/xmlapi.py
@@ -27,6 +27,22 @@ def get_prop(obj, prop_path):
return getattr(parent, pieces[-1])
+def set_prop(obj, prop_path, value):
+ """Set value of attribute identified by `prop_path`
+
+ Set the attribute of `obj` identified by `prop_path` (separated by
+ ".") to `value`. If any component along the path is missing an
+ `AttributeError` is raised.
+
+ """
+ parent = obj
+ pieces = prop_path.split(".")
+ for piece in pieces[:-1]:
+ parent = getattr(parent, piece)
+
+ return setattr(parent, pieces[-1], value)
+
+
class _XPathSegment(object):
"""
Class representing a single 'segment' of an xpath string. For example,