Source code for virttest.libvirt_xml.devices.hub

"""
hub device support class(es)

http://libvirt.org/formatdomain.html#elementsHub
"""

from virttest.libvirt_xml import accessors
from virttest.libvirt_xml.devices import base, librarian


[docs]class Hub(base.TypedDeviceBase): __slots__ = ('address',) def __init__(self, type_name, virsh_instance=base.base.virsh): super(Hub, self).__init__(device_tag='hub', type_name=type_name, virsh_instance=virsh_instance) accessors.XMLElementNest('address', self, parent_xpath='/', tag_name='address', subclass=self.Address, subclass_dargs={'type_name': 'usb', 'virsh_instance': virsh_instance}) # For convenience Address = librarian.get('address')
[docs] def new_hub_address(self, type_name='usb', **dargs): """ Return a new hub Address instance and set properties from dargs """ new_one = self.Address(type_name=type_name, virsh_instance=self.virsh) for key, value in dargs.items(): setattr(new_one, key, value) return new_one