Skip to content
This repository has been archived by the owner on Apr 26, 2020. It is now read-only.

Commit

Permalink
Emit DomainAdded & DomainRemoved signals
Browse files Browse the repository at this point in the history
  • Loading branch information
kalkin committed Sep 27, 2016
1 parent c76aa46 commit 6ca6da0
Showing 1 changed file with 15 additions and 2 deletions.
17 changes: 15 additions & 2 deletions qubesdbus/domain_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,21 @@ def AddDomain(self, vm, execute=False):
return False
else:
vm['qid'] = len(self.domains)
self.domains.append(self._proxify_domain(vm))
domain = self._proxify_domain(vm)
self.domains.append(domain)
log.info('Added domain %s', vm['name'])
# pylint: disable=protected-access
self.DomainAdded("org.qubes.DomainManager1", domain._object_path)
return True

@dbus.service.signal("org.qubes.DomainManager1", signature="so")
def DomainAdded(self, _, object_path):
self.log.debug("Emiting DomainAdded signal: %s", object_path)

@dbus.service.signal("org.qubes.DomainManager1", signature="so")
def DomainRemoved(self, _, object_path):
self.log.debug("Emiting DomainRemoved signal: %s", object_path)

@dbus.service.method(dbus_interface='org.qubes.DomainManager1',
in_signature='ob', out_signature='b')
def DelDomain(self, vm_dbus_path, execute=False):
Expand All @@ -82,9 +93,11 @@ def DelDomain(self, vm_dbus_path, execute=False):
log.error('Creating domains via DBus is not implemented yet')
return False
for vm in self.domains:
if vm._object_path == vm_dbus_path: # pylint: disable=protected-access
# pylint: disable=protected-access
if vm._object_path == vm_dbus_path:
vm.remove_from_connection()
self.domains.remove(vm)
self.DomainRemoved("org.qubes.DomainManager1", vm._object_path)
return True
return False

Expand Down

0 comments on commit 6ca6da0

Please sign in to comment.