[virt-tools-list] [PATCH 1/4] Filter of listed domains works again.
Cole Robinson
crobinso at redhat.com
Tue May 31 16:38:46 UTC 2011
On 05/23/2011 05:47 PM, Darryl L. Pierce wrote:
> With the change to libvirtworker to re-use code from the GUI, the
> specified filters for started/defined domains was lost. This patch
> re-enables that functionality.
> ---
> src/virtManagerTui/configscreen.py | 4 ++--
> src/virtManagerTui/libvirtworker.py | 14 ++++++++++++--
> 2 files changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/src/virtManagerTui/configscreen.py b/src/virtManagerTui/configscreen.py
> index 77fe983..f9753f7 100644
> --- a/src/virtManagerTui/configscreen.py
> +++ b/src/virtManagerTui/configscreen.py
> @@ -167,10 +167,10 @@ class DomainListConfigScreen(ConfigScreen):
> if self.__has_domains:
> self.__domain_list = Listbox(0)
> for uuid in domuuids:
> - dom = self.get_libvirt().get_domain(uuid)
> + domain = self.get_libvirt().get_domain(uuid)
>
> # dom is a vmmDomain
> - self.__domain_list.append(dom.get_name(), dom)
> + self.__domain_list.append(domain.get_name(), domain)
> result = [self.__domain_list]
> else:
> grid = Grid(1, 1)
> diff --git a/src/virtManagerTui/libvirtworker.py b/src/virtManagerTui/libvirtworker.py
> index 185e673..0172fe1 100644
> --- a/src/virtManagerTui/libvirtworker.py
> +++ b/src/virtManagerTui/libvirtworker.py
> @@ -120,11 +120,21 @@ class LibvirtWorker:
> '''Returns the capabilities for this libvirt host.'''
> return self.__capabilities
>
> - def list_domains(self, defined = True, started = True):
> + def list_domains(self, defined = True, created = True):
> '''Lists all domains.'''
> # XXX: This doesn't abide the passed parameters
This comment is now dead, I dropped it.
I've pushed these 4 patches now.
Thanks,
Cole
> self.__vmmconn.tick()
> - return self.__vmmconn.list_vm_uuids()
> + uuids = self.__vmmconn.list_vm_uuids()
> + result = []
> + for uuid in uuids:
> + include = False
> + domain = self.get_domain(uuid)
> + if domain.status() in [libvirt.VIR_DOMAIN_RUNNING]:
> + if created: include = True
> + else:
> + if defined: include = True
> + if include: result.append(uuid)
> + return result
>
> def get_domain(self, uuid):
> '''Returns the specified domain.'''
More information about the virt-tools-list
mailing list