mirror of
https://github.com/virt-manager/virt-manager.git
synced 2024-10-26 17:25:22 +03:00
connection: Remove is_*_capable wrappers
Call the conn.support check directly. Move the check logging to the initial startup path Signed-off-by: Cole Robinson <crobinso@redhat.com>
This commit is contained in:
parent
670e2fe11a
commit
1aff5a611e
@ -221,9 +221,7 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
|
||||
# Available HW options
|
||||
is_local = not self.conn.is_remote()
|
||||
is_storage_capable = self.conn.is_storage_capable()
|
||||
|
||||
have_storage = (is_local or is_storage_capable)
|
||||
have_storage = (is_local or self.conn.support.conn_storage())
|
||||
storage_tooltip = None
|
||||
if not have_storage:
|
||||
storage_tooltip = _("Connection does not support storage"
|
||||
@ -263,11 +261,11 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
_("Not supported for this guest type."),
|
||||
"channel")
|
||||
add_hw_option(_("USB Host Device"), "system-run", PAGE_HOSTDEV,
|
||||
self.conn.is_nodedev_capable(),
|
||||
self.conn.support.conn_nodedev(),
|
||||
_("Connection does not support host device enumeration"),
|
||||
"usb")
|
||||
|
||||
nodedev_enabled = self.conn.is_nodedev_capable()
|
||||
nodedev_enabled = self.conn.support.conn_nodedev()
|
||||
nodedev_errstr = _("Connection does not support "
|
||||
"host device enumeration")
|
||||
if self.vm.is_container():
|
||||
|
@ -178,11 +178,6 @@ class vmmConnection(vmmGObject):
|
||||
self._init_object_count = None
|
||||
self._init_object_event = None
|
||||
|
||||
self._network_capable = None
|
||||
self._storage_capable = None
|
||||
self._interface_capable = None
|
||||
self._nodedev_capable = None
|
||||
|
||||
self.using_domain_events = False
|
||||
self._domain_cb_ids = []
|
||||
self.using_network_events = False
|
||||
@ -429,38 +424,6 @@ class vmmConnection(vmmGObject):
|
||||
def support(self):
|
||||
return self._backend.support
|
||||
|
||||
def is_storage_capable(self):
|
||||
if self._storage_capable is None:
|
||||
self._storage_capable = self.support.conn_storage()
|
||||
if self._storage_capable is False:
|
||||
log.debug("Connection doesn't seem to support storage "
|
||||
"APIs. Skipping all storage polling.")
|
||||
|
||||
return self._storage_capable
|
||||
|
||||
def is_network_capable(self):
|
||||
if self._network_capable is None:
|
||||
self._network_capable = self.support.conn_network()
|
||||
if self._network_capable is False:
|
||||
log.debug("Connection doesn't seem to support network "
|
||||
"APIs. Skipping all network polling.")
|
||||
|
||||
return self._network_capable
|
||||
|
||||
def is_interface_capable(self):
|
||||
if self._interface_capable is None:
|
||||
self._interface_capable = self.support.conn_interface()
|
||||
if self._interface_capable is False:
|
||||
log.debug("Connection doesn't seem to support interface "
|
||||
"APIs. Skipping all interface polling.")
|
||||
|
||||
return self._interface_capable
|
||||
|
||||
def is_nodedev_capable(self):
|
||||
if self._nodedev_capable is None:
|
||||
self._nodedev_capable = self.support.conn_nodedev()
|
||||
return self._nodedev_capable
|
||||
|
||||
def _get_flags_helper(self, obj, key, check_func):
|
||||
ignore = obj
|
||||
flags_dict = self._xml_flags.get(key)
|
||||
@ -982,13 +945,19 @@ class vmmConnection(vmmGObject):
|
||||
return False, ConnectError
|
||||
|
||||
def _populate_initial_state(self):
|
||||
log.debug("libvirt version=%s",
|
||||
self._backend.local_libvirt_version())
|
||||
log.debug("daemon version=%s",
|
||||
self._backend.daemon_version())
|
||||
log.debug("libvirt version=%s", self._backend.local_libvirt_version())
|
||||
log.debug("daemon version=%s", self._backend.daemon_version())
|
||||
log.debug("conn version=%s", self._backend.conn_version())
|
||||
log.debug("%s capabilities:\n%s",
|
||||
self.get_uri(), self.caps.get_xml())
|
||||
log.debug("%s capabilities:\n%s", self.get_uri(), self.caps.get_xml())
|
||||
|
||||
if not self.support.conn_storage():
|
||||
log.debug("Connection doesn't seem to support storage APIs.")
|
||||
if not self.support.conn_network():
|
||||
log.debug("Connection doesn't seem to support network APIs.")
|
||||
if not self.support.conn_interface():
|
||||
log.debug("Connection doesn't seem to support interface APIs.")
|
||||
if not self.support.conn_nodedev():
|
||||
log.debug("Connection doesn't seem to support nodedev APIs.")
|
||||
|
||||
self._add_conn_events()
|
||||
|
||||
@ -998,8 +967,7 @@ class vmmConnection(vmmGObject):
|
||||
if (not isinstance(e, AttributeError) and
|
||||
not self.support.is_error_nosupport(e)):
|
||||
raise
|
||||
log.debug("Connection doesn't support KeepAlive, "
|
||||
"skipping")
|
||||
log.debug("Connection doesn't support KeepAlive, skipping")
|
||||
|
||||
# The initial tick will set up a threading event that will only
|
||||
# trigger after all the polled libvirt objects are fully initialized.
|
||||
@ -1130,28 +1098,28 @@ class vmmConnection(vmmGObject):
|
||||
|
||||
def _update_nets(self, dopoll):
|
||||
keymap = dict((o.get_connkey(), o) for o in self.list_nets())
|
||||
if not dopoll or not self.is_network_capable():
|
||||
if not dopoll or not self.support.conn_network():
|
||||
return [], [], list(keymap.values())
|
||||
return pollhelpers.fetch_nets(self._backend, keymap,
|
||||
(lambda obj, key: vmmNetwork(self, obj, key)))
|
||||
|
||||
def _update_pools(self, dopoll):
|
||||
keymap = dict((o.get_connkey(), o) for o in self.list_pools())
|
||||
if not dopoll or not self.is_storage_capable():
|
||||
if not dopoll or not self.support.conn_storage():
|
||||
return [], [], list(keymap.values())
|
||||
return pollhelpers.fetch_pools(self._backend, keymap,
|
||||
(lambda obj, key: vmmStoragePool(self, obj, key)))
|
||||
|
||||
def _update_interfaces(self, dopoll):
|
||||
keymap = dict((o.get_connkey(), o) for o in self.list_interfaces())
|
||||
if not dopoll or not self.is_interface_capable():
|
||||
if not dopoll or not self.support.conn_interface():
|
||||
return [], [], list(keymap.values())
|
||||
return pollhelpers.fetch_interfaces(self._backend, keymap,
|
||||
(lambda obj, key: vmmInterface(self, obj, key)))
|
||||
|
||||
def _update_nodedevs(self, dopoll):
|
||||
keymap = dict((o.get_connkey(), o) for o in self.list_nodedevs())
|
||||
if not dopoll or not self.is_nodedev_capable():
|
||||
if not dopoll or not self.support.conn_nodedev():
|
||||
return [], [], list(keymap.values())
|
||||
return pollhelpers.fetch_nodedevs(self._backend, keymap,
|
||||
(lambda obj, key: vmmNodeDevice(self, obj, key)))
|
||||
|
@ -414,7 +414,7 @@ class vmmCreateVM(vmmGObjectUI):
|
||||
|
||||
# Helper state
|
||||
is_local = not self.conn.is_remote()
|
||||
is_storage_capable = self.conn.is_storage_capable()
|
||||
is_storage_capable = self.conn.support.conn_storage()
|
||||
can_storage = (is_local or is_storage_capable)
|
||||
is_pv = guest.os.is_xenpv()
|
||||
is_container = self.conn.is_container()
|
||||
|
@ -132,7 +132,7 @@ class vmmAddStorage(vmmGObjectUI):
|
||||
storage_tooltip = None
|
||||
|
||||
can_storage = (not self.conn.is_remote() or
|
||||
self.conn.is_storage_capable())
|
||||
self.conn.support.conn_storage())
|
||||
use_storage = self.widget("storage-select")
|
||||
storage_area = self.widget("storage-box")
|
||||
|
||||
|
@ -388,8 +388,8 @@ class vmmNetworkList(vmmGObjectUI):
|
||||
self._repopulate_network_list()
|
||||
|
||||
net_err = None
|
||||
if (not self.conn.is_nodedev_capable() or
|
||||
not self.conn.is_interface_capable()):
|
||||
if (not self.conn.support.conn_nodedev() or
|
||||
not self.conn.support.conn_interface()):
|
||||
net_err = _("Libvirt version does not support "
|
||||
"physical interface listing.")
|
||||
|
||||
|
@ -133,9 +133,9 @@ class vmmHostNets(vmmGObjectUI):
|
||||
def _refresh_conn_state(self):
|
||||
conn_active = self.conn.is_active()
|
||||
self.widget("net-add").set_sensitive(conn_active and
|
||||
self.conn.is_network_capable())
|
||||
self.conn.support.conn_network())
|
||||
|
||||
if conn_active and not self.conn.is_network_capable():
|
||||
if conn_active and not self.conn.support.conn_network():
|
||||
self._set_error_page(
|
||||
_("Libvirt connection does not support virtual network "
|
||||
"management."))
|
||||
|
@ -267,9 +267,9 @@ class vmmHostStorage(vmmGObjectUI):
|
||||
def _refresh_conn_state(self):
|
||||
conn_active = self.conn.is_active()
|
||||
self.widget("pool-add").set_sensitive(conn_active and
|
||||
self.conn.is_storage_capable())
|
||||
self.conn.support.conn_storage())
|
||||
|
||||
if conn_active and not self.conn.is_storage_capable():
|
||||
if conn_active and not self.conn.support.conn_storage():
|
||||
self._set_error_page(
|
||||
_("Libvirt connection does not support storage management."))
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user