Juan Hernandez has uploaded a new change for review. Change subject: sdk: Regenerate against the latest API ......................................................................
sdk: Regenerate against the latest API This patch regenerates the SDK using the latest API obtained from the engine built from commit 746fad0. Change-Id: I3609909d5131e9e484ebb182a306d3f78f211fe5 Signed-off-by: Juan Hernandez <[email protected]> --- M generator/src/main/resources/api.rsdl M generator/src/main/resources/api.xsd M src/ovirtsdk/api.py M src/ovirtsdk/infrastructure/brokers.py M src/ovirtsdk/xml/params.py 5 files changed, 625 insertions(+), 148 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine-sdk refs/changes/17/32417/1 diff --git a/generator/src/main/resources/api.rsdl b/generator/src/main/resources/api.rsdl index 9ee092c..4d44b6d 100644 --- a/generator/src/main/resources/api.rsdl +++ b/generator/src/main/resources/api.rsdl @@ -3810,6 +3810,24 @@ <parameter required="false" type="xs:int"> <name>qos.cpu_limit</name> </parameter> + <parameter required="false" type="xs:int"> + <name>qos.inbound_average</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.inbound_peak</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.inbound_burst</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.outbound_average</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.outbound_peak</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.outbound_burst</name> + </parameter> </parameters_set> </body> </request> @@ -3909,6 +3927,24 @@ </parameter> <parameter required="false" type="xs:int"> <name>qos.cpu_limit</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.inbound_average</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.inbound_peak</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.inbound_burst</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.outbound_average</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.outbound_peak</name> + </parameter> + <parameter required="false" type="xs:int"> + <name>qos.outbound_burst</name> </parameter> </parameters_set> </body> @@ -4722,6 +4758,9 @@ </parameter> <parameter required="false" type="xs:string"> <name>disk.sgio</name> + </parameter> + <parameter required="false" type="xs:string"> + <name>disk.lun_storage.host</name> </parameter> </parameters_set> </body> @@ -7373,6 +7412,9 @@ </parameter> <parameter required="false" type="xs:boolean"> <name>instance_type.virtio_scsi.enabled</name> + </parameter> + <parameter required="false" type="xs:boolean"> + <name>instance_type.soundcard_enabled</name> </parameter> </parameters_set> </body> @@ -10745,6 +10787,9 @@ <parameter required="false" type="xs:boolean"> <name>template.virtio_scsi.enabled</name> </parameter> + <parameter required="false" type="xs:boolean"> + <name>template.soundcard_enabled</name> + </parameter> <parameter required="false" type="collection"> <name>template.vm.disks.disk</name> <parameters_set> @@ -11041,6 +11086,9 @@ </parameter> <parameter required="false" type="xs:boolean"> <name>template.virtio_scsi.enabled</name> + </parameter> + <parameter required="false" type="xs:boolean"> + <name>template.soundcard_enabled</name> </parameter> <parameter required="false" type="xs:string"> <name>template.version.version_name</name> @@ -12151,6 +12199,9 @@ <parameter required="false" type="xs:string"> <name>vmpool.description</name> </parameter> + <parameter required="false" type="xs:boolean"> + <name>vmpool.soundcard_enabled</name> + </parameter> </parameters_set> </body> </request> @@ -12605,6 +12656,9 @@ <parameter required="false" type="xs:boolean"> <name>vm.virtio_scsi.enabled</name> </parameter> + <parameter required="false" type="xs:boolean"> + <name>vm.soundcard_enabled</name> + </parameter> <parameter required="false" type="collection"> <name>vm.payloads.payload</name> <parameters_set> @@ -12828,6 +12882,9 @@ </parameter> <parameter required="false" type="xs:boolean"> <name>vm.virtio_scsi.enabled</name> + </parameter> + <parameter required="false" type="xs:boolean"> + <name>vm.soundcard_enabled</name> </parameter> <parameter required="false" type="collection"> <name>vm.payloads.payload</name> @@ -13386,6 +13443,9 @@ <name>vm.virtio_scsi.enabled</name> </parameter> <parameter required="false" type="xs:boolean"> + <name>vm.soundcard_enabled</name> + </parameter> + <parameter required="false" type="xs:boolean"> <name>vm.use_latest_template_version</name> </parameter> <parameter required="false" type="collection"> @@ -13816,6 +13876,9 @@ <parameter required="false" type="xs:string"> <name>disk.sgio</name> </parameter> + <parameter required="false" type="xs:string"> + <name>disk.lun_storage.host</name> + </parameter> </parameters_set> <parameters_set> <description>attach a disk to the virtual machine</description> diff --git a/generator/src/main/resources/api.xsd b/generator/src/main/resources/api.xsd index e07001e..1973439 100644 --- a/generator/src/main/resources/api.xsd +++ b/generator/src/main/resources/api.xsd @@ -1912,6 +1912,7 @@ <xs:element name="last_name" type="xs:string" minOccurs="0" maxOccurs="1"/> <!-- generally name@domain --> <xs:element name="user_name" type="xs:string" minOccurs="0" maxOccurs="1"/> + <xs:element name="principal" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="password" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="email" type="xs:string" minOccurs="0" maxOccurs="1"/> <!-- used only to represent the initial role assignments for a @@ -1920,13 +1921,6 @@ <xs:element name="roles" type="Roles" minOccurs="0" maxOccurs="1"/> <xs:element ref="groups" minOccurs="0"/> </xs:sequence> - </xs:extension> - </xs:complexContent> - </xs:complexType> - - <xs:complexType name="JobOwner"> - <xs:complexContent> - <xs:extension base="User"> </xs:extension> </xs:complexContent> </xs:complexType> @@ -2363,6 +2357,7 @@ <xs:element ref="network" minOccurs="0" maxOccurs="1"/> <xs:element name="port_mirroring" type="xs:boolean" minOccurs="0"/> <xs:element ref="custom_properties" minOccurs="0"/> + <xs:element ref="qos" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:extension> </xs:complexContent> @@ -2639,6 +2634,7 @@ <xs:element name="timezone" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element ref="domain" minOccurs="0" maxOccurs="1"/> <xs:element ref="usb" minOccurs="0" maxOccurs="1"/> + <xs:element ref="soundcard_enabled" minOccurs="0" maxOccurs="1"/> <xs:element name="tunnel_migration" type="xs:boolean" minOccurs="0" maxOccurs="1"/> <xs:element name="migration_downtime" type="xs:int" minOccurs="0" maxOccurs="1" /> <xs:element ref="virtio_scsi" minOccurs="0" maxOccurs="1"/> @@ -3059,6 +3055,7 @@ <xs:element name="guest_info" type="GuestInfo" minOccurs="0" maxOccurs="1"/> <xs:element ref="quota" minOccurs="0" maxOccurs="1"/> <xs:element ref="usb" minOccurs="0" maxOccurs="1"/> + <xs:element ref="soundcard_enabled" minOccurs="0" maxOccurs="1"/> <xs:element name="tunnel_migration" type="xs:boolean" minOccurs="0" maxOccurs="1"/> <xs:element name="migration_downtime" type="xs:int" minOccurs="0" maxOccurs="1" /> <xs:element ref="virtio_scsi" minOccurs="0" maxOccurs="1"/> @@ -3247,6 +3244,7 @@ <xs:element name="max_user_vms" type="xs:int" minOccurs="0"/> <xs:element ref="display" minOccurs="0" maxOccurs="1"/> <xs:element ref="rng_device" minOccurs="0" maxOccurs="1"/> + <xs:element ref="soundcard_enabled" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:extension> </xs:complexContent> @@ -3776,6 +3774,8 @@ <xs:element name="type" type="xs:string" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:complexType> + + <xs:element name="soundcard_enabled" type="xs:boolean"/> <xs:element name="quota" type="Quota"/> @@ -4470,7 +4470,7 @@ <xs:extension base="BaseResource"> <xs:sequence> <xs:element ref="status" minOccurs="0" maxOccurs="1"/> - <xs:element name="owner" type="JobOwner" minOccurs="0" maxOccurs="1"/> + <xs:element name="owner" type="User" minOccurs="0" maxOccurs="1"/> <xs:element name="start_time" type="xs:dateTime" minOccurs="0" maxOccurs="1"/> <xs:element name="end_time" type="xs:dateTime" minOccurs="0" maxOccurs="1"/> <xs:element name="last_updated" type="xs:dateTime" minOccurs="0" maxOccurs="1"/> @@ -4576,6 +4576,18 @@ minOccurs="0" maxOccurs="1" /> <xs:element name="cpu_limit" type="xs:int" minOccurs="0" maxOccurs="1" /> + <xs:element name="inbound_average" type="xs:int" minOccurs="0" + maxOccurs="1" /> + <xs:element name="inbound_peak" type="xs:int" minOccurs="0" + maxOccurs="1" /> + <xs:element name="inbound_burst" type="xs:int" minOccurs="0" + maxOccurs="1" /> + <xs:element name="outbound_average" type="xs:int" minOccurs="0" + maxOccurs="1" /> + <xs:element name="outbound_peak" type="xs:int" minOccurs="0" + maxOccurs="1" /> + <xs:element name="outbound_burst" type="xs:int" minOccurs="0" + maxOccurs="1" /> </xs:sequence> <xs:attribute name="type" type="xs:string"/> </xs:extension> @@ -4736,8 +4748,8 @@ <xs:complexContent> <xs:extension base="BaseResource"> <xs:sequence> - <xs:element ref="qos" minOccurs="1" maxOccurs="1"/> - <xs:element ref="storage_domain" minOccurs="1" maxOccurs="1"/> + <xs:element ref="qos" minOccurs="0" maxOccurs="1"/> + <xs:element ref="storage_domain" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:extension> </xs:complexContent> @@ -4767,8 +4779,8 @@ <xs:complexContent> <xs:extension base="BaseResource"> <xs:sequence> - <xs:element ref="qos" minOccurs="1" maxOccurs="1"/> - <xs:element ref="cluster" minOccurs="1" maxOccurs="1"/> + <xs:element ref="qos" minOccurs="0" maxOccurs="1"/> + <xs:element ref="cluster" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:extension> </xs:complexContent> diff --git a/src/ovirtsdk/api.py b/src/ovirtsdk/api.py index 0f5edfa..197281c 100644 --- a/src/ovirtsdk/api.py +++ b/src/ovirtsdk/api.py @@ -20,7 +20,7 @@ ############ GENERATED CODE ############ ######################################## -'''Generated at: 2014-08-27 18:00:51.000009''' +'''Generated at: 2014-09-03 18:27:07.000695''' import types import urlparse diff --git a/src/ovirtsdk/infrastructure/brokers.py b/src/ovirtsdk/infrastructure/brokers.py index c1589b7..7d1a91a 100644 --- a/src/ovirtsdk/infrastructure/brokers.py +++ b/src/ovirtsdk/infrastructure/brokers.py @@ -19,7 +19,7 @@ ############ GENERATED CODE ############ ######################################## -'''Generated at: 2014-08-27 18:00:50.000830''' +'''Generated at: 2014-09-03 18:27:07.000516''' from ovirtsdk.xml import params @@ -7752,6 +7752,12 @@ [@param qos.max_read_iops: int] [@param qos.max_write_iops: int] [@param qos.cpu_limit: int] + [@param qos.inbound_average: int] + [@param qos.inbound_peak: int] + [@param qos.inbound_burst: int] + [@param qos.outbound_average: int] + [@param qos.outbound_peak: int] + [@param qos.outbound_burst: int] [@param correlation_id: any string] @return QoS: @@ -7806,6 +7812,12 @@ [@param qos.max_read_iops: int] [@param qos.max_write_iops: int] [@param qos.cpu_limit: int] + [@param qos.inbound_average: int] + [@param qos.inbound_peak: int] + [@param qos.inbound_burst: int] + [@param qos.outbound_average: int] + [@param qos.outbound_peak: int] + [@param qos.outbound_burst: int] [@param expect: 201-created] [@param correlation_id: any string] @@ -9755,6 +9767,7 @@ [@param disk.wipe_after_delete: boolean] [@param disk.quota.id: string] [@param disk.sgio: string] + [@param disk.lun_storage.host: string] [@param expect: 201-created] [@param correlation_id: any string] @@ -13777,6 +13790,7 @@ [@param instance_type.usb.type: string] [@param instance_type.migration_downtime: int] [@param instance_type.virtio_scsi.enabled: boolean] + [@param instance_type.soundcard_enabled: boolean] [@param expect: 201-created] [@param correlation_id: any string] @@ -19357,6 +19371,7 @@ [@param template.tunnel_migration: boolean] [@param template.migration_downtime: int] [@param template.virtio_scsi.enabled: boolean] + [@param template.soundcard_enabled: boolean] [@param template.version.version_name: string] [@param template.serial_number.policy: string] [@param template.serial_number.value: string] @@ -20577,6 +20592,7 @@ [@param template.tunnel_migration: boolean] [@param template.migration_downtime: int] [@param template.virtio_scsi.enabled: boolean] + [@param template.soundcard_enabled: boolean] [@param template.vm.disks.disk: collection] { [@ivar disk.id: string] @@ -21614,6 +21630,7 @@ [@param vm.tunnel_migration: boolean] [@param vm.migration_downtime: int] [@param vm.virtio_scsi.enabled: boolean] + [@param vm.soundcard_enabled: boolean] [@param vm.use_latest_template_version: boolean] [@param vm.payloads.payload: collection] { @@ -22944,6 +22961,7 @@ [@param disk.wipe_after_delete: boolean] [@param disk.quota.id: string] [@param disk.sgio: string] + [@param disk.lun_storage.host: string] Overload 3: @param disk.id: string [@param disk.active: boolean] @@ -25428,6 +25446,7 @@ [@param vm.tunnel_migration: boolean] [@param vm.migration_downtime: int] [@param vm.virtio_scsi.enabled: boolean] + [@param vm.soundcard_enabled: boolean] [@param vm.payloads.payload: collection] { [@ivar payload.type: string] @@ -25512,6 +25531,7 @@ [@param vm.tunnel_migration: boolean] [@param vm.migration_downtime: int] [@param vm.virtio_scsi.enabled: boolean] + [@param vm.soundcard_enabled: boolean] [@param vm.payloads.payload: collection] { [@ivar payload.type: string] @@ -26018,6 +26038,7 @@ [@param vmpool.max_user_vms: int] [@param vmpool.display.proxy: string] [@param vmpool.description: string] + [@param vmpool.soundcard_enabled: boolean] [@param expect: 201-created] [@param correlation_id: any string] diff --git a/src/ovirtsdk/xml/params.py b/src/ovirtsdk/xml/params.py index 7b4ae4a..657c814 100644 --- a/src/ovirtsdk/xml/params.py +++ b/src/ovirtsdk/xml/params.py @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # -# Generated Wed Aug 27 18:00:48 2014 by generateDS.py version 2.12a. +# Generated Wed Sep 3 18:27:05 2014 by generateDS.py version 2.12a. # import sys @@ -11440,8 +11440,7 @@ ival_ = self.gds_validate_boolean(ival_, node, 'administrative') self.administrative = ival_ elif nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user = obj_ elif nodeName_ == 'permits': @@ -11548,8 +11547,8 @@ class User(BaseResource): subclass = None superclass = BaseResource - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, domain=None, domain_entry_id=None, department=None, logged_in=None, namespace=None, last_name=None, user_name=None, password=None, email=None, roles=None, groups=None, extensiontype_=None): - super(User, self).__init__(actions, href, id, name, description, comment, creation_status, link, extensiontype_, ) + def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, domain=None, domain_entry_id=None, department=None, logged_in=None, namespace=None, last_name=None, user_name=None, principal=None, password=None, email=None, roles=None, groups=None): + super(User, self).__init__(actions, href, id, name, description, comment, creation_status, link, ) self.domain = domain self.domain_entry_id = domain_entry_id self.department = department @@ -11557,11 +11556,11 @@ self.namespace = namespace self.last_name = last_name self.user_name = user_name + self.principal = principal self.password = password self.email = email self.roles = roles self.groups = groups - self.extensiontype_ = extensiontype_ def factory(*args_, **kwargs_): if User.subclass: return User.subclass(*args_, **kwargs_) @@ -11582,6 +11581,8 @@ def set_last_name(self, last_name): self.last_name = last_name def get_user_name(self): return self.user_name def set_user_name(self, user_name): self.user_name = user_name + def get_principal(self): return self.principal + def set_principal(self, principal): self.principal = principal def get_password(self): return self.password def set_password(self, password): self.password = password def get_email(self): return self.email @@ -11590,8 +11591,6 @@ def set_roles(self, roles): self.roles = roles def get_groups(self): return self.groups def set_groups(self, groups): self.groups = groups - def get_extensiontype_(self): return self.extensiontype_ - def set_extensiontype_(self, extensiontype_): self.extensiontype_ = extensiontype_ def hasContent_(self): if ( self.domain is not None or @@ -11601,6 +11600,7 @@ self.namespace is not None or self.last_name is not None or self.user_name is not None or + self.principal is not None or self.password is not None or self.email is not None or self.roles is not None or @@ -11628,10 +11628,6 @@ outfile.write('/>%s' % (eol_, )) def exportAttributes(self, outfile, level, already_processed, namespace_='', name_='User'): super(User, self).exportAttributes(outfile, level, already_processed, namespace_, name_='User') - if self.extensiontype_ is not None and 'xsi:type' not in already_processed: - already_processed.add('xsi:type') - outfile.write(' xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"') - outfile.write(' xsi:type="%s"' % self.extensiontype_) def exportChildren(self, outfile, level, namespace_='', name_='User', fromsubclass_=False, pretty_print=True): super(User, self).exportChildren(outfile, level, namespace_, name_, True, pretty_print=pretty_print) if pretty_print: @@ -11658,6 +11654,9 @@ if self.user_name is not None: showIndent(outfile, level, pretty_print) outfile.write('<%suser_name>%s</%suser_name>%s' % (namespace_, self.gds_format_string(quote_xml(self.user_name).encode(ExternalEncoding), input_name='user_name'), namespace_, eol_)) + if self.principal is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%sprincipal>%s</%sprincipal>%s' % (namespace_, self.gds_format_string(quote_xml(self.principal).encode(ExternalEncoding), input_name='principal'), namespace_, eol_)) if self.password is not None: showIndent(outfile, level, pretty_print) outfile.write('<%spassword>%s</%spassword>%s' % (namespace_, self.gds_format_string(quote_xml(self.password).encode(ExternalEncoding), input_name='password'), namespace_, eol_)) @@ -11702,6 +11701,9 @@ if self.user_name is not None: showIndent(outfile, level) outfile.write('user_name=%s,\n' % quote_python(self.user_name).encode(ExternalEncoding)) + if self.principal is not None: + showIndent(outfile, level) + outfile.write('principal=%s,\n' % quote_python(self.principal).encode(ExternalEncoding)) if self.password is not None: showIndent(outfile, level) outfile.write('password=%s,\n' % quote_python(self.password).encode(ExternalEncoding)) @@ -11728,10 +11730,6 @@ self.buildChildren(child, node, nodeName_) return self def buildAttributes(self, node, attrs, already_processed): - value = find_attr_value_('xsi:type', node) - if value is not None and 'xsi:type' not in already_processed: - already_processed.add('xsi:type') - self.extensiontype_ = value super(User, self).buildAttributes(node, attrs, already_processed) def buildChildren(self, child_, node, nodeName_, fromsubclass_=False): if nodeName_ == 'domain': @@ -11768,6 +11766,10 @@ user_name_ = child_.text user_name_ = self.gds_validate_string(user_name_, node, 'user_name') self.user_name = user_name_ + elif nodeName_ == 'principal': + principal_ = child_.text + principal_ = self.gds_validate_string(principal_, node, 'principal') + self.principal = principal_ elif nodeName_ == 'password': password_ = child_.text password_ = self.gds_validate_string(password_, node, 'password') @@ -11786,70 +11788,6 @@ self.groups = obj_ super(User, self).buildChildren(child_, node, nodeName_, True) # end class User - - -class JobOwner(User): - subclass = None - superclass = User - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, domain=None, domain_entry_id=None, department=None, logged_in=None, namespace=None, last_name=None, user_name=None, password=None, email=None, roles=None, groups=None): - super(JobOwner, self).__init__(actions, href, id, name, description, comment, creation_status, link, domain, domain_entry_id, department, logged_in, namespace, last_name, user_name, password, email, roles, groups, ) - pass - def factory(*args_, **kwargs_): - if JobOwner.subclass: - return JobOwner.subclass(*args_, **kwargs_) - else: - return JobOwner(*args_, **kwargs_) - factory = staticmethod(factory) - def hasContent_(self): - if ( - super(JobOwner, self).hasContent_() - ): - return True - else: - return False - def export(self, outfile, level, namespace_='', name_='JobOwner', namespacedef_='', pretty_print=True): - if pretty_print: - eol_ = '\n' - else: - eol_ = '' - showIndent(outfile, level, pretty_print) - outfile.write('<%s%s%s' % (namespace_, name_, namespacedef_ and ' ' + namespacedef_ or '', )) - already_processed = set() - self.exportAttributes(outfile, level, already_processed, namespace_, name_='JobOwner') - if self.hasContent_(): - outfile.write('>%s' % (eol_, )) - self.exportChildren(outfile, level + 1, namespace_, name_, pretty_print=pretty_print) - showIndent(outfile, level, pretty_print) - outfile.write('</%s%s>%s' % (namespace_, name_, eol_)) - else: - outfile.write('/>%s' % (eol_, )) - def exportAttributes(self, outfile, level, already_processed, namespace_='', name_='JobOwner'): - super(JobOwner, self).exportAttributes(outfile, level, already_processed, namespace_, name_='JobOwner') - def exportChildren(self, outfile, level, namespace_='', name_='JobOwner', fromsubclass_=False, pretty_print=True): - super(JobOwner, self).exportChildren(outfile, level, namespace_, name_, True, pretty_print=pretty_print) - def exportLiteral(self, outfile, level, name_='JobOwner'): - level += 1 - already_processed = set() - self.exportLiteralAttributes(outfile, level, already_processed, name_) - if self.hasContent_(): - self.exportLiteralChildren(outfile, level, name_) - def exportLiteralAttributes(self, outfile, level, already_processed, name_): - super(JobOwner, self).exportLiteralAttributes(outfile, level, already_processed, name_) - def exportLiteralChildren(self, outfile, level, name_): - super(JobOwner, self).exportLiteralChildren(outfile, level, name_) - def build(self, node): - already_processed = set() - self.buildAttributes(node, node.attrib, already_processed) - for child in node: - nodeName_ = Tag_pattern_.match(child.tag).groups()[-1] - self.buildChildren(child, node, nodeName_) - return self - def buildAttributes(self, node, attrs, already_processed): - super(JobOwner, self).buildAttributes(node, attrs, already_processed) - def buildChildren(self, child_, node, nodeName_, fromsubclass_=False): - super(JobOwner, self).buildChildren(child_, node, nodeName_, True) - pass -# end class JobOwner class Users(BaseResources): @@ -11938,8 +11876,7 @@ super(Users, self).buildAttributes(node, attrs, already_processed) def buildChildren(self, child_, node, nodeName_, fromsubclass_=False): if nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user.append(obj_) super(Users, self).buildChildren(child_, node, nodeName_, True) @@ -12153,8 +12090,7 @@ authentication_method_ = self.gds_validate_string(authentication_method_, node, 'authentication_method') self.authentication_method = authentication_method_ elif nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user = obj_ super(SSH, self).buildChildren(child_, node, nodeName_, True) @@ -12579,8 +12515,7 @@ obj_.build(child_) self.role = obj_ elif nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user = obj_ elif nodeName_ == 'group': @@ -12814,8 +12749,7 @@ super(Domain, self).buildAttributes(node, attrs, already_processed) def buildChildren(self, child_, node, nodeName_, fromsubclass_=False): if nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user = obj_ super(Domain, self).buildChildren(child_, node, nodeName_, True) @@ -13166,8 +13100,7 @@ correlation_id_ = self.gds_validate_string(correlation_id_, node, 'correlation_id') self.correlation_id = correlation_id_ elif nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user = obj_ elif nodeName_ == 'vm': @@ -14901,11 +14834,12 @@ class VnicProfile(BaseResource): subclass = None superclass = BaseResource - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, network=None, port_mirroring=None, custom_properties=None): + def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, network=None, port_mirroring=None, custom_properties=None, qos=None): super(VnicProfile, self).__init__(actions, href, id, name, description, comment, creation_status, link, ) self.network = network self.port_mirroring = port_mirroring self.custom_properties = custom_properties + self.qos = qos def factory(*args_, **kwargs_): if VnicProfile.subclass: return VnicProfile.subclass(*args_, **kwargs_) @@ -14918,11 +14852,14 @@ def set_port_mirroring(self, port_mirroring): self.port_mirroring = port_mirroring def get_custom_properties(self): return self.custom_properties def set_custom_properties(self, custom_properties): self.custom_properties = custom_properties + def get_qos(self): return self.qos + def set_qos(self, qos): self.qos = qos def hasContent_(self): if ( self.network is not None or self.port_mirroring is not None or self.custom_properties is not None or + self.qos is not None or super(VnicProfile, self).hasContent_() ): return True @@ -14959,6 +14896,8 @@ outfile.write('<%sport_mirroring>%s</%sport_mirroring>%s' % (namespace_, self.gds_format_boolean(self.port_mirroring, input_name='port_mirroring'), namespace_, eol_)) if self.custom_properties is not None: self.custom_properties.export(outfile, level, namespace_, name_='custom_properties', pretty_print=pretty_print) + if self.qos is not None: + self.qos.export(outfile, level, namespace_, name_='qos', pretty_print=pretty_print) def exportLiteral(self, outfile, level, name_='VnicProfile'): level += 1 already_processed = set() @@ -14982,6 +14921,12 @@ showIndent(outfile, level) outfile.write('custom_properties=model_.custom_properties(\n') self.custom_properties.exportLiteral(outfile, level) + showIndent(outfile, level) + outfile.write('),\n') + if self.qos is not None: + showIndent(outfile, level) + outfile.write('qos=model_.qos(\n') + self.qos.exportLiteral(outfile, level) showIndent(outfile, level) outfile.write('),\n') def build(self, node): @@ -15012,6 +14957,10 @@ obj_ = CustomProperties.factory() obj_.build(child_) self.custom_properties = obj_ + elif nodeName_ == 'qos': + obj_ = QoS.factory() + obj_.build(child_) + self.qos = obj_ super(VnicProfile, self).buildChildren(child_, node, nodeName_, True) # end class VnicProfile @@ -16789,7 +16738,7 @@ class Template(BaseResource): subclass = None superclass = BaseResource - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, vm=None, type_=None, status=None, memory=None, cpu=None, cpu_shares=None, bios=None, os=None, cluster=None, storage_domain=None, creation_time=None, origin=None, high_availability=None, display=None, stateless=None, delete_protected=None, sso=None, rng_device=None, console=None, timezone=None, domain=None, usb=None, tunnel_migration=None, migration_downtime=None, virtio_scsi=None, permissions=None, version=None, serial_number=None, cpu_profile=None, extensiontype_=None): + def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, vm=None, type_=None, status=None, memory=None, cpu=None, cpu_shares=None, bios=None, os=None, cluster=None, storage_domain=None, creation_time=None, origin=None, high_availability=None, display=None, stateless=None, delete_protected=None, sso=None, rng_device=None, console=None, timezone=None, domain=None, usb=None, soundcard_enabled=None, tunnel_migration=None, migration_downtime=None, virtio_scsi=None, permissions=None, version=None, serial_number=None, cpu_profile=None, extensiontype_=None): super(Template, self).__init__(actions, href, id, name, description, comment, creation_status, link, extensiontype_, ) self.vm = vm self.type_ = type_ @@ -16817,6 +16766,7 @@ self.timezone = timezone self.domain = domain self.usb = usb + self.soundcard_enabled = soundcard_enabled self.tunnel_migration = tunnel_migration self.migration_downtime = migration_downtime self.virtio_scsi = virtio_scsi @@ -16875,6 +16825,8 @@ def set_domain(self, domain): self.domain = domain def get_usb(self): return self.usb def set_usb(self, usb): self.usb = usb + def get_soundcard_enabled(self): return self.soundcard_enabled + def set_soundcard_enabled(self, soundcard_enabled): self.soundcard_enabled = soundcard_enabled def get_tunnel_migration(self): return self.tunnel_migration def set_tunnel_migration(self, tunnel_migration): self.tunnel_migration = tunnel_migration def get_migration_downtime(self): return self.migration_downtime @@ -16915,6 +16867,7 @@ self.timezone is not None or self.domain is not None or self.usb is not None or + self.soundcard_enabled is not None or self.tunnel_migration is not None or self.migration_downtime is not None or self.virtio_scsi is not None or @@ -17007,6 +16960,9 @@ self.domain.export(outfile, level, namespace_, name_='domain', pretty_print=pretty_print) if self.usb is not None: self.usb.export(outfile, level, namespace_, name_='usb', pretty_print=pretty_print) + if self.soundcard_enabled is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%ssoundcard_enabled>%s</%ssoundcard_enabled>%s' % (namespace_, self.gds_format_boolean(self.soundcard_enabled, input_name='soundcard_enabled'), namespace_, eol_)) if self.tunnel_migration is not None: showIndent(outfile, level, pretty_print) outfile.write('<%stunnel_migration>%s</%stunnel_migration>%s' % (namespace_, self.gds_format_boolean(self.tunnel_migration, input_name='tunnel_migration'), namespace_, eol_)) @@ -17141,6 +17097,9 @@ self.usb.exportLiteral(outfile, level) showIndent(outfile, level) outfile.write('),\n') + if self.soundcard_enabled is not None: + showIndent(outfile, level) + outfile.write('soundcard_enabled=%s,\n' % self.soundcard_enabled) if self.tunnel_migration is not None: showIndent(outfile, level) outfile.write('tunnel_migration=%s,\n' % self.tunnel_migration) @@ -17300,6 +17259,16 @@ obj_ = Usb.factory() obj_.build(child_) self.usb = obj_ + elif nodeName_ == 'soundcard_enabled': + sval_ = child_.text + if sval_ in ('true', '1'): + ival_ = True + elif sval_ in ('false', '0'): + ival_ = False + else: + raise_parse_error(child_, 'requires boolean') + ival_ = self.gds_validate_boolean(ival_, node, 'soundcard_enabled') + self.soundcard_enabled = ival_ elif nodeName_ == 'tunnel_migration': sval_ = child_.text if sval_ in ('true', '1'): @@ -20181,8 +20150,7 @@ super(AuthorizedKey, self).buildAttributes(node, attrs, already_processed) def buildChildren(self, child_, node, nodeName_, fromsubclass_=False): if nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user = obj_ elif nodeName_ == 'key': @@ -20828,7 +20796,7 @@ class VM(BaseResource): subclass = None superclass = BaseResource - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, type_=None, status=None, stop_reason=None, memory=None, cpu=None, cpu_shares=None, bios=None, os=None, high_availability=None, display=None, host=None, cluster=None, template=None, instance_type=None, storage_domain=None, start_time=None, stop_time=None, creation_time=None, origin=None, stateless=None, delete_protected=None, sso=None, rng_device=None, console=None, timezone=None, domain=None, custom_properties=None, payloads=None, statistics=None, disks=None, initialization=None, nics=None, tags=None, snapshots=None, placement_policy=None, memory_policy=None, guest_info=None, quota=None, usb=None, tunnel_migration=None, migration_downtime=None, virtio_scsi=None, permissions=None, cpu_profile=None, vmpool=None, cdroms=None, floppies=None, reported_devices=None, watchdogs=None, use_latest_template_version=None, serial_number=None, next_run_confi! guration_exists=None, numa_tune_mode=None, extensiontype_=None): + def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, type_=None, status=None, stop_reason=None, memory=None, cpu=None, cpu_shares=None, bios=None, os=None, high_availability=None, display=None, host=None, cluster=None, template=None, instance_type=None, storage_domain=None, start_time=None, stop_time=None, creation_time=None, origin=None, stateless=None, delete_protected=None, sso=None, rng_device=None, console=None, timezone=None, domain=None, custom_properties=None, payloads=None, statistics=None, disks=None, initialization=None, nics=None, tags=None, snapshots=None, placement_policy=None, memory_policy=None, guest_info=None, quota=None, usb=None, soundcard_enabled=None, tunnel_migration=None, migration_downtime=None, virtio_scsi=None, permissions=None, cpu_profile=None, vmpool=None, cdroms=None, floppies=None, reported_devices=None, watchdogs=None, use_latest_template_version=None, serial_num! ber=None, next_run_configuration_exists=None, numa_tune_mode=None, extensiontype_=None): super(VM, self).__init__(actions, href, id, name, description, comment, creation_status, link, extensiontype_, ) self.type_ = type_ self.status = status @@ -20881,6 +20849,7 @@ self.guest_info = guest_info self.quota = quota self.usb = usb + self.soundcard_enabled = soundcard_enabled self.tunnel_migration = tunnel_migration self.migration_downtime = migration_downtime self.virtio_scsi = virtio_scsi @@ -20980,6 +20949,8 @@ def set_quota(self, quota): self.quota = quota def get_usb(self): return self.usb def set_usb(self, usb): self.usb = usb + def get_soundcard_enabled(self): return self.soundcard_enabled + def set_soundcard_enabled(self, soundcard_enabled): self.soundcard_enabled = soundcard_enabled def get_tunnel_migration(self): return self.tunnel_migration def set_tunnel_migration(self, tunnel_migration): self.tunnel_migration = tunnel_migration def get_migration_downtime(self): return self.migration_downtime @@ -21051,6 +21022,7 @@ self.guest_info is not None or self.quota is not None or self.usb is not None or + self.soundcard_enabled is not None or self.tunnel_migration is not None or self.migration_downtime is not None or self.virtio_scsi is not None or @@ -21187,6 +21159,9 @@ self.quota.export(outfile, level, namespace_, name_='quota', pretty_print=pretty_print) if self.usb is not None: self.usb.export(outfile, level, namespace_, name_='usb', pretty_print=pretty_print) + if self.soundcard_enabled is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%ssoundcard_enabled>%s</%ssoundcard_enabled>%s' % (namespace_, self.gds_format_boolean(self.soundcard_enabled, input_name='soundcard_enabled'), namespace_, eol_)) if self.tunnel_migration is not None: showIndent(outfile, level, pretty_print) outfile.write('<%stunnel_migration>%s</%stunnel_migration>%s' % (namespace_, self.gds_format_boolean(self.tunnel_migration, input_name='tunnel_migration'), namespace_, eol_)) @@ -21431,6 +21406,9 @@ self.usb.exportLiteral(outfile, level) showIndent(outfile, level) outfile.write('),\n') + if self.soundcard_enabled is not None: + showIndent(outfile, level) + outfile.write('soundcard_enabled=%s,\n' % self.soundcard_enabled) if self.tunnel_migration is not None: showIndent(outfile, level) outfile.write('tunnel_migration=%s,\n' % self.tunnel_migration) @@ -21691,6 +21669,16 @@ obj_ = Usb.factory() obj_.build(child_) self.usb = obj_ + elif nodeName_ == 'soundcard_enabled': + sval_ = child_.text + if sval_ in ('true', '1'): + ival_ = True + elif sval_ in ('false', '0'): + ival_ = False + else: + raise_parse_error(child_, 'requires boolean') + ival_ = self.gds_validate_boolean(ival_, node, 'soundcard_enabled') + self.soundcard_enabled = ival_ elif nodeName_ == 'tunnel_migration': sval_ = child_.text if sval_ in ('true', '1'): @@ -22573,8 +22561,7 @@ obj_.build(child_) self.ip = obj_ elif nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user = obj_ elif nodeName_ == 'console_user': @@ -22687,7 +22674,7 @@ class VmPool(BaseResource): subclass = None superclass = BaseResource - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, size=None, cluster=None, template=None, prestarted_vms=None, max_user_vms=None, display=None, rng_device=None): + def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, size=None, cluster=None, template=None, prestarted_vms=None, max_user_vms=None, display=None, rng_device=None, soundcard_enabled=None): super(VmPool, self).__init__(actions, href, id, name, description, comment, creation_status, link, ) self.size = size self.cluster = cluster @@ -22696,6 +22683,7 @@ self.max_user_vms = max_user_vms self.display = display self.rng_device = rng_device + self.soundcard_enabled = soundcard_enabled def factory(*args_, **kwargs_): if VmPool.subclass: return VmPool.subclass(*args_, **kwargs_) @@ -22716,6 +22704,8 @@ def set_display(self, display): self.display = display def get_rng_device(self): return self.rng_device def set_rng_device(self, rng_device): self.rng_device = rng_device + def get_soundcard_enabled(self): return self.soundcard_enabled + def set_soundcard_enabled(self, soundcard_enabled): self.soundcard_enabled = soundcard_enabled def hasContent_(self): if ( self.size is not None or @@ -22725,6 +22715,7 @@ self.max_user_vms is not None or self.display is not None or self.rng_device is not None or + self.soundcard_enabled is not None or super(VmPool, self).hasContent_() ): return True @@ -22771,6 +22762,9 @@ self.display.export(outfile, level, namespace_, name_='display', pretty_print=pretty_print) if self.rng_device is not None: self.rng_device.export(outfile, level, namespace_, name_='rng_device', pretty_print=pretty_print) + if self.soundcard_enabled is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%ssoundcard_enabled>%s</%ssoundcard_enabled>%s' % (namespace_, self.gds_format_boolean(self.soundcard_enabled, input_name='soundcard_enabled'), namespace_, eol_)) def exportLiteral(self, outfile, level, name_='VmPool'): level += 1 already_processed = set() @@ -22814,6 +22808,9 @@ self.rng_device.exportLiteral(outfile, level) showIndent(outfile, level) outfile.write('),\n') + if self.soundcard_enabled is not None: + showIndent(outfile, level) + outfile.write('soundcard_enabled=%s,\n' % self.soundcard_enabled) def build(self, node): already_processed = set() self.buildAttributes(node, node.attrib, already_processed) @@ -22865,6 +22862,16 @@ obj_ = RngDevice.factory() obj_.build(child_) self.rng_device = obj_ + elif nodeName_ == 'soundcard_enabled': + sval_ = child_.text + if sval_ in ('true', '1'): + ival_ = True + elif sval_ in ('false', '0'): + ival_ = False + else: + raise_parse_error(child_, 'requires boolean') + ival_ = self.gds_validate_boolean(ival_, node, 'soundcard_enabled') + self.soundcard_enabled = ival_ super(VmPool, self).buildChildren(child_, node, nodeName_, True) # end class VmPool @@ -24995,8 +25002,8 @@ class Snapshot(VM): subclass = None superclass = VM - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, type_=None, status=None, stop_reason=None, memory=None, cpu=None, cpu_shares=None, bios=None, os=None, high_availability=None, display=None, host=None, cluster=None, template=None, instance_type=None, storage_domain=None, start_time=None, stop_time=None, creation_time=None, origin=None, stateless=None, delete_protected=None, sso=None, rng_device=None, console=None, timezone=None, domain=None, custom_properties=None, payloads=None, statistics=None, disks=None, initialization=None, nics=None, tags=None, snapshots=None, placement_policy=None, memory_policy=None, guest_info=None, quota=None, usb=None, tunnel_migration=None, migration_downtime=None, virtio_scsi=None, permissions=None, cpu_profile=None, vmpool=None, cdroms=None, floppies=None, reported_devices=None, watchdogs=None, use_latest_template_version=None, serial_number=None, next_run_confi! guration_exists=None, numa_tune_mode=None, vm=None, date=None, snapshot_status=None, persist_memorystate=None): - super(Snapshot, self).__init__(actions, href, id, name, description, comment, creation_status, link, type_, status, stop_reason, memory, cpu, cpu_shares, bios, os, high_availability, display, host, cluster, template, instance_type, storage_domain, start_time, stop_time, creation_time, origin, stateless, delete_protected, sso, rng_device, console, timezone, domain, custom_properties, payloads, statistics, disks, initialization, nics, tags, snapshots, placement_policy, memory_policy, guest_info, quota, usb, tunnel_migration, migration_downtime, virtio_scsi, permissions, cpu_profile, vmpool, cdroms, floppies, reported_devices, watchdogs, use_latest_template_version, serial_number, next_run_configuration_exists, numa_tune_mode, ) + def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, type_=None, status=None, stop_reason=None, memory=None, cpu=None, cpu_shares=None, bios=None, os=None, high_availability=None, display=None, host=None, cluster=None, template=None, instance_type=None, storage_domain=None, start_time=None, stop_time=None, creation_time=None, origin=None, stateless=None, delete_protected=None, sso=None, rng_device=None, console=None, timezone=None, domain=None, custom_properties=None, payloads=None, statistics=None, disks=None, initialization=None, nics=None, tags=None, snapshots=None, placement_policy=None, memory_policy=None, guest_info=None, quota=None, usb=None, soundcard_enabled=None, tunnel_migration=None, migration_downtime=None, virtio_scsi=None, permissions=None, cpu_profile=None, vmpool=None, cdroms=None, floppies=None, reported_devices=None, watchdogs=None, use_latest_template_version=None, serial_num! ber=None, next_run_configuration_exists=None, numa_tune_mode=None, vm=None, date=None, snapshot_status=None, persist_memorystate=None): + super(Snapshot, self).__init__(actions, href, id, name, description, comment, creation_status, link, type_, status, stop_reason, memory, cpu, cpu_shares, bios, os, high_availability, display, host, cluster, template, instance_type, storage_domain, start_time, stop_time, creation_time, origin, stateless, delete_protected, sso, rng_device, console, timezone, domain, custom_properties, payloads, statistics, disks, initialization, nics, tags, snapshots, placement_policy, memory_policy, guest_info, quota, usb, soundcard_enabled, tunnel_migration, migration_downtime, virtio_scsi, permissions, cpu_profile, vmpool, cdroms, floppies, reported_devices, watchdogs, use_latest_template_version, serial_number, next_run_configuration_exists, numa_tune_mode, ) self.vm = vm if isinstance(date, basestring): initvalue_ = datetime_.datetime.strptime(date, '%Y-%m-%dT%H:%M:%S') @@ -26675,8 +26682,7 @@ obj_.build(child_) self.template = obj_ elif nodeName_ == 'user': - class_obj_ = self.get_class_obj_(child_, User) - obj_ = class_obj_.factory() + obj_ = User.factory() obj_.build(child_) self.user = obj_ elif nodeName_ == 'group': @@ -32122,7 +32128,7 @@ outfile.write('),\n') if self.owner is not None: showIndent(outfile, level) - outfile.write('owner=model_.JobOwner(\n') + outfile.write('owner=model_.User(\n') self.owner.exportLiteral(outfile, level, name_='owner') showIndent(outfile, level) outfile.write('),\n') @@ -32156,7 +32162,7 @@ obj_.build(child_) self.status = obj_ elif nodeName_ == 'owner': - obj_ = JobOwner.factory() + obj_ = User.factory() obj_.build(child_) self.owner = obj_ elif nodeName_ == 'start_time': @@ -32681,7 +32687,7 @@ class QoS(BaseResource): subclass = None superclass = BaseResource - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, type_=None, data_center=None, max_throughput=None, max_read_throughput=None, max_write_throughput=None, max_iops=None, max_read_iops=None, max_write_iops=None, cpu_limit=None): + def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, type_=None, data_center=None, max_throughput=None, max_read_throughput=None, max_write_throughput=None, max_iops=None, max_read_iops=None, max_write_iops=None, cpu_limit=None, inbound_average=None, inbound_peak=None, inbound_burst=None, outbound_average=None, outbound_peak=None, outbound_burst=None): super(QoS, self).__init__(actions, href, id, name, description, comment, creation_status, link, ) self.type_ = _cast(None, type_) self.data_center = data_center @@ -32692,6 +32698,12 @@ self.max_read_iops = max_read_iops self.max_write_iops = max_write_iops self.cpu_limit = cpu_limit + self.inbound_average = inbound_average + self.inbound_peak = inbound_peak + self.inbound_burst = inbound_burst + self.outbound_average = outbound_average + self.outbound_peak = outbound_peak + self.outbound_burst = outbound_burst def factory(*args_, **kwargs_): if QoS.subclass: return QoS.subclass(*args_, **kwargs_) @@ -32714,6 +32726,18 @@ def set_max_write_iops(self, max_write_iops): self.max_write_iops = max_write_iops def get_cpu_limit(self): return self.cpu_limit def set_cpu_limit(self, cpu_limit): self.cpu_limit = cpu_limit + def get_inbound_average(self): return self.inbound_average + def set_inbound_average(self, inbound_average): self.inbound_average = inbound_average + def get_inbound_peak(self): return self.inbound_peak + def set_inbound_peak(self, inbound_peak): self.inbound_peak = inbound_peak + def get_inbound_burst(self): return self.inbound_burst + def set_inbound_burst(self, inbound_burst): self.inbound_burst = inbound_burst + def get_outbound_average(self): return self.outbound_average + def set_outbound_average(self, outbound_average): self.outbound_average = outbound_average + def get_outbound_peak(self): return self.outbound_peak + def set_outbound_peak(self, outbound_peak): self.outbound_peak = outbound_peak + def get_outbound_burst(self): return self.outbound_burst + def set_outbound_burst(self, outbound_burst): self.outbound_burst = outbound_burst def get_type(self): return self.type_ def set_type(self, type_): self.type_ = type_ def hasContent_(self): @@ -32726,6 +32750,12 @@ self.max_read_iops is not None or self.max_write_iops is not None or self.cpu_limit is not None or + self.inbound_average is not None or + self.inbound_peak is not None or + self.inbound_burst is not None or + self.outbound_average is not None or + self.outbound_peak is not None or + self.outbound_burst is not None or super(QoS, self).hasContent_() ): return True @@ -32781,6 +32811,24 @@ if self.cpu_limit is not None: showIndent(outfile, level, pretty_print) outfile.write('<%scpu_limit>%s</%scpu_limit>%s' % (namespace_, self.gds_format_integer(self.cpu_limit, input_name='cpu_limit'), namespace_, eol_)) + if self.inbound_average is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%sinbound_average>%s</%sinbound_average>%s' % (namespace_, self.gds_format_integer(self.inbound_average, input_name='inbound_average'), namespace_, eol_)) + if self.inbound_peak is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%sinbound_peak>%s</%sinbound_peak>%s' % (namespace_, self.gds_format_integer(self.inbound_peak, input_name='inbound_peak'), namespace_, eol_)) + if self.inbound_burst is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%sinbound_burst>%s</%sinbound_burst>%s' % (namespace_, self.gds_format_integer(self.inbound_burst, input_name='inbound_burst'), namespace_, eol_)) + if self.outbound_average is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%soutbound_average>%s</%soutbound_average>%s' % (namespace_, self.gds_format_integer(self.outbound_average, input_name='outbound_average'), namespace_, eol_)) + if self.outbound_peak is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%soutbound_peak>%s</%soutbound_peak>%s' % (namespace_, self.gds_format_integer(self.outbound_peak, input_name='outbound_peak'), namespace_, eol_)) + if self.outbound_burst is not None: + showIndent(outfile, level, pretty_print) + outfile.write('<%soutbound_burst>%s</%soutbound_burst>%s' % (namespace_, self.gds_format_integer(self.outbound_burst, input_name='outbound_burst'), namespace_, eol_)) def exportLiteral(self, outfile, level, name_='QoS'): level += 1 already_processed = set() @@ -32822,6 +32870,24 @@ if self.cpu_limit is not None: showIndent(outfile, level) outfile.write('cpu_limit=%d,\n' % self.cpu_limit) + if self.inbound_average is not None: + showIndent(outfile, level) + outfile.write('inbound_average=%d,\n' % self.inbound_average) + if self.inbound_peak is not None: + showIndent(outfile, level) + outfile.write('inbound_peak=%d,\n' % self.inbound_peak) + if self.inbound_burst is not None: + showIndent(outfile, level) + outfile.write('inbound_burst=%d,\n' % self.inbound_burst) + if self.outbound_average is not None: + showIndent(outfile, level) + outfile.write('outbound_average=%d,\n' % self.outbound_average) + if self.outbound_peak is not None: + showIndent(outfile, level) + outfile.write('outbound_peak=%d,\n' % self.outbound_peak) + if self.outbound_burst is not None: + showIndent(outfile, level) + outfile.write('outbound_burst=%d,\n' % self.outbound_burst) def build(self, node): already_processed = set() self.buildAttributes(node, node.attrib, already_processed) @@ -32896,6 +32962,54 @@ raise_parse_error(child_, 'requires integer: %s' % exp) ival_ = self.gds_validate_integer(ival_, node, 'cpu_limit') self.cpu_limit = ival_ + elif nodeName_ == 'inbound_average': + sval_ = child_.text + try: + ival_ = int(sval_) + except (TypeError, ValueError), exp: + raise_parse_error(child_, 'requires integer: %s' % exp) + ival_ = self.gds_validate_integer(ival_, node, 'inbound_average') + self.inbound_average = ival_ + elif nodeName_ == 'inbound_peak': + sval_ = child_.text + try: + ival_ = int(sval_) + except (TypeError, ValueError), exp: + raise_parse_error(child_, 'requires integer: %s' % exp) + ival_ = self.gds_validate_integer(ival_, node, 'inbound_peak') + self.inbound_peak = ival_ + elif nodeName_ == 'inbound_burst': + sval_ = child_.text + try: + ival_ = int(sval_) + except (TypeError, ValueError), exp: + raise_parse_error(child_, 'requires integer: %s' % exp) + ival_ = self.gds_validate_integer(ival_, node, 'inbound_burst') + self.inbound_burst = ival_ + elif nodeName_ == 'outbound_average': + sval_ = child_.text + try: + ival_ = int(sval_) + except (TypeError, ValueError), exp: + raise_parse_error(child_, 'requires integer: %s' % exp) + ival_ = self.gds_validate_integer(ival_, node, 'outbound_average') + self.outbound_average = ival_ + elif nodeName_ == 'outbound_peak': + sval_ = child_.text + try: + ival_ = int(sval_) + except (TypeError, ValueError), exp: + raise_parse_error(child_, 'requires integer: %s' % exp) + ival_ = self.gds_validate_integer(ival_, node, 'outbound_peak') + self.outbound_peak = ival_ + elif nodeName_ == 'outbound_burst': + sval_ = child_.text + try: + ival_ = int(sval_) + except (TypeError, ValueError), exp: + raise_parse_error(child_, 'requires integer: %s' % exp) + ival_ = self.gds_validate_integer(ival_, node, 'outbound_burst') + self.outbound_burst = ival_ super(QoS, self).buildChildren(child_, node, nodeName_, True) # end class QoS @@ -34429,8 +34543,8 @@ class InstanceType(Template): subclass = None superclass = Template - def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, vm=None, type_=None, status=None, memory=None, cpu=None, cpu_shares=None, bios=None, os=None, cluster=None, storage_domain=None, creation_time=None, origin=None, high_availability=None, display=None, stateless=None, delete_protected=None, sso=None, rng_device=None, console=None, timezone=None, domain=None, usb=None, tunnel_migration=None, migration_downtime=None, virtio_scsi=None, permissions=None, version=None, serial_number=None, cpu_profile=None): - super(InstanceType, self).__init__(actions, href, id, name, description, comment, creation_status, link, vm, type_, status, memory, cpu, cpu_shares, bios, os, cluster, storage_domain, creation_time, origin, high_availability, display, stateless, delete_protected, sso, rng_device, console, timezone, domain, usb, tunnel_migration, migration_downtime, virtio_scsi, permissions, version, serial_number, cpu_profile, ) + def __init__(self, actions=None, href=None, id=None, name=None, description=None, comment=None, creation_status=None, link=None, vm=None, type_=None, status=None, memory=None, cpu=None, cpu_shares=None, bios=None, os=None, cluster=None, storage_domain=None, creation_time=None, origin=None, high_availability=None, display=None, stateless=None, delete_protected=None, sso=None, rng_device=None, console=None, timezone=None, domain=None, usb=None, soundcard_enabled=None, tunnel_migration=None, migration_downtime=None, virtio_scsi=None, permissions=None, version=None, serial_number=None, cpu_profile=None): + super(InstanceType, self).__init__(actions, href, id, name, description, comment, creation_status, link, vm, type_, status, memory, cpu, cpu_shares, bios, os, cluster, storage_domain, creation_time, origin, high_availability, display, stateless, delete_protected, sso, rng_device, console, timezone, domain, usb, soundcard_enabled, tunnel_migration, migration_downtime, virtio_scsi, permissions, version, serial_number, cpu_profile, ) pass def factory(*args_, **kwargs_): if InstanceType.subclass: @@ -38188,7 +38302,7 @@ 'snapshots': Snapshots, 'group': Group, 'numa_node_pin': NumaNodePin, - 'owner': JobOwner, + 'owner': User, 'rate': Rate, 'brick_memoryinfo': GlusterBrickMemoryInfo, 'reported_device_types': ReportedDeviceTypes, @@ -38430,14 +38544,9 @@ def get_root_tag(node): tag = Tag_pattern_.match(node.tag).groups()[-1] - #rootClass = globals().get(tag) - # Begin NOT_GENERATED - # The api XSD does not define a single root tag. - # We need to map the classes in this file to the possible - # element roots in the XSD. - # rootClass = globals().get(tag) - rootClass = findRootClass(tag) - # End NOT_GENERATED + rootClass = GDSClassesMapping.get(tag) + if rootClass is None: + rootClass = globals().get(tag) return tag, rootClass @@ -38484,25 +38593,23 @@ return rootObj, rootElement, mapping, reverse_mapping -def parseString(inString): +def parseString(inString, silence=False): from StringIO import StringIO doc = parsexml_(StringIO(inString)) rootNode = doc.getroot() - rootTag, rootClass = get_root_tag(rootNode) + roots = get_root_tag(rootNode) + rootClass = roots[1] if rootClass is None: - rootTag = 'link' - rootClass = Link + rootClass = KeyValuePair rootObj = rootClass.factory() rootObj.build(rootNode) # Enable Python to collect the space used by the DOM. doc = None - # Begin NOT_GENERATED - # Let's shut up the echoing of the received XML - # to stdout. - #sys.stdout.write('<?xml version="1.0" ?>\n') - #rootObj.export(sys.stdout, 0, name_="link", - # namespacedef_='') - # End NOT_GENERATED + if not silence: + sys.stdout.write('<?xml version="1.0" ?>\n') + rootObj.export( + sys.stdout, 0, name_="keyValuePair", + namespacedef_='') return rootObj @@ -38685,7 +38792,6 @@ "IscsiBonds", "IscsiDetails", "Job", - "JobOwner", "Jobs", "KSM", "KdumpStates", @@ -39017,7 +39123,7 @@ "os" : OperatingSystem, "os_types" : OsTypes, "overcommit" : MemoryOverCommit, - "owner" : JobOwner, + "owner" : User, "parameter" : Parameter, "parameters_set" : ParametersSet, "parent" : TagParent, @@ -39152,13 +39258,288 @@ } +_tag_for_type = { + API: "api", + Action: "action", + AffinityGroup: "affinity_group", + AffinityGroups: "affinity_groups", + Agent: "agent", + Agents: "agents", + ApiSummary: "summary", + Application: "application", + Applications: "applications", + ArchitectureCapabilities: "architecture_capabilities", + ArchitectureCapability: "architecture_capability", + AuthenticationMethod: "authentication_methods", + AuthorizedKey: "authorized_key", + AuthorizedKeys: "authorized_keys", + Balance: "balance", + Balances: "balances", + BlockStatistic: "block_statistic", + Body: "body", + Bonding: "bonding", + Bookmark: "bookmark", + Bookmarks: "bookmarks", + BootDevices: "boot_devices", + BootMenu: "boot_menu", + BootProtocols: "boot_protocols", + BrickProfileDetail: "brick_profile_detail", + BrickProfileDetails: "brick_profile_details", + CPU: "cpu", + CPUs: "cpus", + Capabilities: "capabilities", + CdRom: "cdrom", + CdRoms: "cdroms", + Certificate: "certificate", + CloudInit: "cloud_init", + Cluster: "cluster", + Clusters: "clusters", + Configuration: "configuration", + ConfigurationTypes: "configuration_types", + Console: "console", + ContentTypes: "content_types", + Core: "core", + Cores: "cores", + CpuModes: "cpu_modes", + CpuProfile: "cpu_profile", + CpuProfiles: "cpu_profiles", + CpuTune: "cpu_tune", + Creation: "creation", + CreationStates: "creation_states", + CustomProperties: "custom_properties", + DNS: "dns", + DataCenter: "data_center", + DataCenterStates: "data_center_states", + DataCenters: "data_centers", + DetailedLinks: "detailedLinks", + Disk: "disk", + DiskFormats: "disk_formats", + DiskInterfaces: "disk_interfaces", + DiskProfile: "disk_profile", + DiskProfiles: "disk_profiles", + DiskSnapshot: "disk_snapshot", + DiskSnapshots: "disk_snapshots", + DiskStates: "disk_states", + Disks: "disks", + Display: "display", + DisplayTypes: "display_types", + Domain: "domain", + Domains: "domains", + EntityProfileDetail: "entity_profile_detail", + Event: "event", + Events: "events", + Fault: "fault", + Feature: "feature", + Features: "features", + FenceTypes: "fence_types", + File: "file", + Files: "files", + Filter: "filter", + Filters: "filters", + Floppies: "floppies", + Floppy: "floppy", + FopStatistic: "fop_statistic", + GeneralMetadata: "general_metadata", + GlusterBrick: "brick", + GlusterBrickAdvancedDetails: "brick_details", + GlusterBrickMemoryInfo: "brick_memoryinfo", + GlusterBricks: "bricks", + GlusterClient: "gluster_client", + GlusterClients: "gluster_clients", + GlusterHook: "gluster_hook", + GlusterHooks: "gluster_hooks", + GlusterMemoryPool: "memory_pool", + GlusterMemoryPools: "memory_pools", + GlusterServerHook: "server_hook", + GlusterServerHooks: "server_hooks", + GlusterStates: "brick_states", + GlusterVolume: "gluster_volume", + GlusterVolumeProfileDetails: "volume_profile_details", + GlusterVolumeTypes: "gluster_volume_types", + GlusterVolumes: "gluster_volumes", + Group: "group", + Groups: "groups", + GuestNicConfiguration: "nic_configuration", + GuestNicsConfiguration: "nic_configurations", + HardwareInformation: "hardware_information", + Header: "header", + Headers: "headers", + Hook: "hook", + HookStates: "hook_states", + Hooks: "hooks", + Host: "host", + HostNIC: "host_nic", + HostNICStates: "host_nic_states", + HostNics: "host_nics", + HostNonOperationalDetails: "host_non_operational_details", + HostStates: "host_states", + HostStorage: "host_storage", + HostedEngine: "hosted_engine", + Hosts: "hosts", + IP: "ip", + IPs: "ips", + Image: "image", + Images: "images", + Initialization: "initialization", + InstanceType: "instance_type", + InstanceTypes: "instance_types", + IpVersions: "ip_versions", + IscsiBond: "iscsi_bond", + IscsiBonds: "iscsi_bonds", + Job: "job", + Jobs: "jobs", + KSM: "ksm", + KdumpStates: "kdump_states", + KeyValuePair: "keyValuePair", + Label: "label", + Labels: "labels", + Link: "link", + LinkCapabilities: "linkCapabilities", + LogicalUnit: "logical_unit", + MAC: "mac", + Method: "method", + Methods: "methods", + NIC: "nic", + Network: "network", + NetworkConfiguration: "network_configuration", + NetworkStates: "network_states", + Networks: "networks", + NfsProfileDetail: "nfs_profile_detail", + NfsProfileDetails: "nfs_profile_details", + NfsVersions: "nfs_versions", + NicInterfaces: "nic_interfaces", + Nics: "nics", + NumaNode: "host_numa_node", + NumaNodePin: "numa_node_pin", + NumaNodePins: "numa_node_pins", + NumaNodes: "host_numa_nodes", + Options: "options", + OsTypes: "os_types", + Parameter: "parameter", + ParametersSet: "parameters_set", + Payload: "payload", + PayloadEncodings: "payload_encodings", + Payloads: "payloads", + Permission: "permission", + Permissions: "permissions", + Permit: "permit", + Permits: "permits", + PmProxies: "pm_proxies", + PmProxy: "pm_proxy", + PmProxyTypes: "pm_proxy_types", + PortMirroring: "port_mirroring", + PowerManagement: "power_management", + PowerManagementStates: "power_management_states", + PowerManagers: "power_managers", + PreviewVMs: "preview_vms", + ProductInfo: "product_info", + ProfileDetail: "profile_detail", + Properties: "properties", + Property: "property", + QoS: "qos", + QoSs: "qoss", + QosTypes: "qos_types", + Quota: "quota", + Quotas: "quotas", + RSDL: "rsdl", + ReportedDevice: "reported_device", + ReportedDeviceTypes: "reported_device_types", + ReportedDevices: "reported_devices", + Request: "request", + Response: "response", + RngDevice: "rng_device", + RngSources: "rng_sources", + Role: "role", + Roles: "roles", + SELinux: "selinux", + SELinuxModes: "selinux_modes", + SSH: "ssh", + SchedulingPolicies: "scheduling_policies", + SchedulingPolicy: "scheduling_policy", + SchedulingPolicyUnit: "scheduling_policy_unit", + SchedulingPolicyUnitTypes: "scheduling_policy_unit_types", + SchedulingPolicyUnits: "scheduling_policy_units", + Schema: "schema", + ScsiGenericIoOptions: "sgio_options", + SerialNumber: "serial_number", + SerialNumberPolicies: "serial_number_policies", + Session: "session", + Sessions: "sessions", + Slaves: "slaves", + Snapshot: "snapshot", + SnapshotStatuses: "snapshot_statuses", + Snapshots: "snapshots", + SpecialObjects: "special_objects", + Sso: "sso", + SsoMethods: "sso_methods", + Stages: "stages", + Statistic: "statistic", + Statistics: "statistics", + Status: "status", + Step: "step", + StepTypes: "step_types", + Steps: "steps", + Storage: "storage", + StorageConnection: "storage_connection", + StorageConnections: "storage_connections", + StorageDomain: "storage_domain", + StorageDomainStates: "storage_domain_states", + StorageDomainTypes: "storage_domain_types", + StorageDomains: "storage_domains", + StorageFormats: "storage_formats", + StorageManager: "storage_manager", + StorageTypes: "storage_types", + Tag: "tag", + Tags: "tags", + Template: "template", + TemplateStates: "template_states", + Templates: "templates", + TransparentHugePages: "transparent_hugepages", + TransportTypes: "transport_types", + Url: "url", + UsageMessage: "usage_message", + Usages: "usages", + Usb: "usb", + User: "user", + Users: "users", + VCpuPin: "vcpu_pin", + VLAN: "vlan", + VM: "vm", + VMs: "vms", + Value: "value", + Values: "values", + Version: "system_version", + VersionCaps: "version", + VirtIO_SCSI: "virtio_scsi", + VirtualNumaNode: "vm_numa_node", + VirtualNumaNodes: "vm_numa_nodes", + VmAffinities: "vm_affinities", + VmDeviceTypes: "vm_device_types", + VmPauseDetails: "vm_pause_details", + VmPool: "vmpool", + VmPools: "vmpools", + VmStates: "vm_states", + VmTypes: "vm_types", + VnicProfile: "vnic_profile", + VnicProfiles: "vnic_profiles", + VolumeGroup: "volume_group", + WatchDog: "watchdog", + WatchDogs: "watchdogs", + WatchdogActions: "watchdog_actions", + WatchdogModels: "watchdog_models", + Weight: "weight", + Weights: "weights", +} + + def findRootClass(rootTag): """ - Helper function that enables the generated code to locate the - root element. The api does not explicitly list a root - element; hence, the generated code has a hard time deducing - which one it actually is. This function will map the first - tag in the XML (i.e. the root) to an internal class. + This function was needed before version 2.12a of generateDS.py because the + generated code had no way to determine the type corresponding to an XML + type. This has been fixed, and generateDS.py generates now a map that + solves this problem. The function is preserved only for backwards + compatibility, as callers my be using it. Please refrain from using it in + new code as it may be removed in the future. """ return _rootClassMap.get(rootTag) -- To view, visit http://gerrit.ovirt.org/32417 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I3609909d5131e9e484ebb182a306d3f78f211fe5 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine-sdk Gerrit-Branch: sdk_3.5 Gerrit-Owner: Juan Hernandez <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
