mirror of
https://github.com/virt-manager/virt-manager.git
synced 2025-02-25 18:55:27 -06:00
connection: Have get_nodedevs return vmmNodeDevice
To make it consistent with similar vmmConnection functionas
This commit is contained in:
@@ -845,13 +845,13 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
|
||||
devs = self.conn.get_nodedevs(devtype, devcap)
|
||||
for dev in devs:
|
||||
prettyname = dev.pretty_name()
|
||||
prettyname = dev.xmlobj.pretty_name()
|
||||
|
||||
for subdev in subdevs:
|
||||
if dev.name == subdev.parent:
|
||||
prettyname += " (%s)" % subdev.pretty_name()
|
||||
if dev.xmlobj.name == subdev.xmlobj.parent:
|
||||
prettyname += " (%s)" % subdev.xmlobj.pretty_name()
|
||||
|
||||
model.append([prettyname, dev.name, devtype, dev])
|
||||
model.append([prettyname, dev.xmlobj.name, devtype, dev.xmlobj])
|
||||
|
||||
if len(model) == 0:
|
||||
model.append([_("No Devices Available"), None, None, None])
|
||||
|
||||
@@ -576,7 +576,7 @@ class vmmConnection(vmmGObject):
|
||||
str(xmlobj.product_id).startswith("0x000"))))):
|
||||
continue
|
||||
|
||||
retdevs.append(xmlobj)
|
||||
retdevs.append(dev)
|
||||
|
||||
return retdevs
|
||||
|
||||
@@ -585,8 +585,8 @@ class vmmConnection(vmmGObject):
|
||||
devs = self.get_nodedevs(devtype)
|
||||
|
||||
for dev in devs:
|
||||
if (vendor == dev.vendor_id and
|
||||
product == dev.product_id):
|
||||
if (vendor == dev.xmlobj.vendor_id and
|
||||
product == dev.xmlobj.product_id):
|
||||
count += 1
|
||||
|
||||
logging.debug("There are %d node devices with "
|
||||
|
||||
@@ -502,10 +502,10 @@ class vmmCreateInterface(vmmGObjectUI):
|
||||
|
||||
nodedevs = {}
|
||||
for phys in self.conn.get_nodedevs("net"):
|
||||
nodedevs[phys.interface] = [None,
|
||||
False, False, phys.interface,
|
||||
"ethernet", False, True, None,
|
||||
phys.address]
|
||||
nodedevs[phys.xmlobj.interface] = [None,
|
||||
False, False, phys.xmlobj.interface,
|
||||
"ethernet", False, True, None,
|
||||
phys.xmlobj.address]
|
||||
|
||||
row_dict = {}
|
||||
for iface in self.conn.list_interfaces():
|
||||
|
||||
@@ -173,7 +173,7 @@ class vmmCreateNetwork(vmmGObjectUI):
|
||||
|
||||
devnames = []
|
||||
for nodedev in self.conn.get_nodedevs("net"):
|
||||
devnames.append(nodedev.interface)
|
||||
devnames.append(nodedev.xmlobj.interface)
|
||||
for iface in self.conn.list_interfaces():
|
||||
if iface.get_name() not in devnames:
|
||||
devnames.append(iface.get_name())
|
||||
|
||||
@@ -198,7 +198,7 @@ class vmmCreatePool(vmmGObjectUI):
|
||||
|
||||
def list_scsi_adapters(self):
|
||||
scsi_hosts = self.conn.get_nodedevs("scsi_host")
|
||||
host_list = [dev.host for dev in scsi_hosts]
|
||||
host_list = [dev.xmlobj.host for dev in scsi_hosts]
|
||||
|
||||
clean_list = []
|
||||
for h in host_list:
|
||||
@@ -216,9 +216,9 @@ class vmmCreatePool(vmmGObjectUI):
|
||||
devs = self.conn.get_nodedevs("storage")
|
||||
devlist = []
|
||||
for dev in devs:
|
||||
if dev.drive_type != "disk" or not dev.block:
|
||||
if dev.xmlobj.drive_type != "disk" or not dev.xmlobj.block:
|
||||
continue
|
||||
devlist.append(dev.block)
|
||||
devlist.append(dev.xmlobj.block)
|
||||
|
||||
devlist.sort()
|
||||
clean_list = []
|
||||
|
||||
@@ -3016,8 +3016,8 @@ class vmmDetails(vmmGObjectUI):
|
||||
|
||||
nodedev = None
|
||||
for trydev in self.vm.conn.get_nodedevs(devtype, None):
|
||||
if trydev.compare_to_hostdev(hostdev):
|
||||
nodedev = trydev
|
||||
if trydev.xmlobj.compare_to_hostdev(hostdev):
|
||||
nodedev = trydev.xmlobj
|
||||
|
||||
pretty_name = None
|
||||
if nodedev:
|
||||
|
||||
@@ -164,6 +164,10 @@ class vmmLibvirtObject(vmmGObject):
|
||||
self._reparse_xml()
|
||||
return self._xmlobj
|
||||
|
||||
@property
|
||||
def xmlobj(self):
|
||||
return self.get_xmlobj()
|
||||
|
||||
def refresh_xml(self, forcesignal=False):
|
||||
# Force an xml update. Signal 'config-changed' if domain xml has
|
||||
# changed since last refresh
|
||||
|
||||
@@ -98,12 +98,13 @@ class vmmMediaCombo(vmmGObjectUI):
|
||||
model.append(row)
|
||||
|
||||
def _pretty_label(self, nodedev):
|
||||
if not nodedev.media_available:
|
||||
media_label = nodedev.xmlobj.media_label
|
||||
if not nodedev.xmlobj.media_available:
|
||||
media_label = _("No media detected")
|
||||
elif not nodedev.media_label:
|
||||
elif not nodedev.xmlobj.media_label:
|
||||
media_label = _("Media Unknown")
|
||||
|
||||
return "%s (%s)" % (media_label, nodedev.block)
|
||||
return "%s (%s)" % (media_label, nodedev.xmlobj.block)
|
||||
|
||||
def _mediadev_set_default_selection(self):
|
||||
# Set the first active cdrom device as selected, otherwise none
|
||||
@@ -133,17 +134,17 @@ class vmmMediaCombo(vmmGObjectUI):
|
||||
model.clear()
|
||||
|
||||
for nodedev in self.conn.get_nodedevs(devtype="storage"):
|
||||
if not (nodedev.device_type == "storage" and
|
||||
nodedev.drive_type in ["cdrom", "floppy"]):
|
||||
if not (nodedev.xmlobj.device_type == "storage" and
|
||||
nodedev.xmlobj.drive_type in ["cdrom", "floppy"]):
|
||||
continue
|
||||
if nodedev.drive_type != self.media_type:
|
||||
if nodedev.xmlobj.drive_type != self.media_type:
|
||||
continue
|
||||
|
||||
row = [None] * self.OPTICAL_FIELDS
|
||||
row[self.OPTICAL_DEV_PATH] = nodedev.block
|
||||
row[self.OPTICAL_DEV_PATH] = nodedev.xmlobj.block
|
||||
row[self.OPTICAL_LABEL] = self._pretty_label(nodedev)
|
||||
row[self.OPTICAL_HAS_MEDIA] = nodedev.media_available
|
||||
row[self.OPTICAL_DEV_KEY] = nodedev.name
|
||||
row[self.OPTICAL_HAS_MEDIA] = nodedev.xmlobj.media_available
|
||||
row[self.OPTICAL_DEV_KEY] = nodedev.xmlobj.name
|
||||
model.append(row)
|
||||
|
||||
self._set_mediadev_default()
|
||||
|
||||
@@ -183,8 +183,9 @@ class vmmNetworkList(vmmGObjectUI):
|
||||
netdevs[iface.get_name()] = [
|
||||
iface.get_name(), iface.is_bridge(), iface.get_slave_names()]
|
||||
for nodedev in self.conn.get_nodedevs("net"):
|
||||
if nodedev.interface not in netdevs:
|
||||
netdevs[nodedev.interface] = [nodedev.interface, False, []]
|
||||
if nodedev.xmlobj.interface not in netdevs:
|
||||
netdevs[nodedev.xmlobj.interface] = [nodedev.xmlobj.interface,
|
||||
False, []]
|
||||
|
||||
# For every bridge used by a virtual network, and any slaves of
|
||||
# those devices, don't list them.
|
||||
|
||||
Reference in New Issue
Block a user