示例#1
0
 def _obj_to_xml(self):
     element = ET.Element(self.ROOT_TAG)
     xml = Constants.XML_HEADER
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     element.set('name', self.name)
     element.set('imageRef', self.imageRef)
     element.set('flavorRef', self.flavorRef)
     if self.adminPass is not None:
         element.set('adminPass', self.adminPass)
     if self.diskConfig is not None:
         element.set('xmlns:OS-DCF',
                     Constants.XML_API_DISK_CONFIG_NAMESPACE)
         element.set('OS-DCF:diskConfig', self.diskConfig)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     if self.networks is not None:
         networks_ele = ET.Element('networks')
         for network_id in self.networks:
             network = ET.Element('network')
             network.set('uuid', network_id['uuid'])
             networks_ele.append(network)
         element.append(networks_ele)
     if self.personality is not None:
         personality_ele = ET.Element('personality')
         personality_ele.append(Personality._obj_to_xml(self.personality))
         element.append(personality_ele)
     if self.accessIPv4 is not None:
         element.set('accessIPv4', self.accessIPv4)
     if self.accessIPv6 is not None:
         element.set('accessIPv6', self.accessIPv6)
     xml += ET.tostring(element)
     return xml
示例#2
0
 def _obj_to_xml(self):
     element = ET.Element('server')
     xml = Constants.XML_HEADER
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     element.set('name', self.name)
     element.set('imageRef', self.image_ref)
     element.set('flavorRef', self.flavor_ref)
     if self.admin_pass is not None:
         element.set('adminPass', self.admin_pass)
     if self.disk_config is not None:
         element.set('xmlns:OS-DCF',
                     Constants.XML_API_DISK_CONFIG_NAMESPACE)
         element.set('OS-DCF:diskConfig', self.disk_config)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     if self.networks is not None:
         networks_ele = ET.Element('networks')
         for network_id in self.networks:
             network = ET.Element('network')
             network.set('uuid', network_id['uuid'])
             networks_ele.append(network)
         element.append(networks_ele)
     if self.personality is not None:
         personality_ele = ET.Element('personality')
         personality_ele.append(Personality._obj_to_xml(self.personality))
         element.append(personality_ele)
     if self.block_device_mapping is not None:
         block_device_ele = ET.Element('block_device_mapping')
         block_device_ele.append(BlockDeviceMapping._obj_to_xml(
             self.block_device_mapping))
         element.append(block_device_ele)
     if self.user_data is not None:
         element.set('user_data', self.user_data)
     if self.accessIPv4 is not None:
         element.set('accessIPv4', self.accessIPv4)
     if self.accessIPv6 is not None:
         element.set('accessIPv6', self.accessIPv6)
     if self.key_name is not None:
         element.set('key_name', self.key_name)
     if self.config_drive is not None:
         element.set('config_drive', self.config_drive)
     if self.scheduler_hints is not None:
         hints_ele = ET.Element('OS-SCH-HNT:scheduler_hints')
         for key, value in self.metadata.iteritems():
             meta_element = ET.Element(key)
             meta_element.text = value
             hints_ele.append(meta_element)
     xml += ET.tostring(element)
     return xml
示例#3
0
 def _obj_to_xml(self):
     element = ET.Element('server')
     xml = Constants.XML_HEADER
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     element.set('name', self.name)
     element.set('imageRef', self.image_ref)
     element.set('flavorRef', self.flavor_ref)
     if self.admin_pass is not None:
         element.set('adminPass', self.admin_pass)
     if self.disk_config is not None:
         element.set('xmlns:OS-DCF',
                     Constants.XML_API_DISK_CONFIG_NAMESPACE)
         element.set('OS-DCF:diskConfig', self.disk_config)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     if self.networks is not None:
         networks_ele = ET.Element('networks')
         for network_id in self.networks:
             network = ET.Element('network')
             network.set('uuid', network_id['uuid'])
             networks_ele.append(network)
         element.append(networks_ele)
     if self.personality is not None:
         personality_ele = ET.Element('personality')
         personality_ele.append(Personality._obj_to_xml(self.personality))
         element.append(personality_ele)
     if self.block_device_mapping is not None:
         block_device_ele = ET.Element('block_device_mapping')
         block_device_ele.append(
             BlockDeviceMapping._obj_to_xml(self.block_device_mapping))
         element.append(block_device_ele)
     if self.user_data is not None:
         element.set('user_data', self.user_data)
     if self.accessIPv4 is not None:
         element.set('accessIPv4', self.accessIPv4)
     if self.accessIPv6 is not None:
         element.set('accessIPv6', self.accessIPv6)
     if self.key_name is not None:
         element.set('key_name', self.key_name)
     if self.config_drive is not None:
         element.set('config_drive', self.config_drive)
     if self.scheduler_hints is not None:
         hints_ele = ET.Element('OS-SCH-HNT:scheduler_hints')
         for key, value in self.metadata.iteritems():
             meta_element = ET.Element(key)
             meta_element.text = value
             hints_ele.append(meta_element)
     xml += ET.tostring(element)
     return xml
示例#4
0
 def _obj_to_xml(self):
     xml = Constants.XML_HEADER
     element = ET.Element('createImage')
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     element.set('xmlns:atom', Constants.XML_API_ATOM_NAMESPACE)
     element.set('name', self.name)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     xml += ET.tostring(element)
     return xml
示例#5
0
 def _obj_to_xml(self):
     xml = Constants.XML_HEADER
     element = ET.Element('createImage')
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     element.set('xmlns:atom', Constants.XML_API_ATOM_NAMESPACE)
     element.set('name', self.name)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     xml += ET.tostring(element)
     return xml
示例#6
0
 def _obj_to_xml(self):
     xml = Constants.XML_HEADER
     element = ET.Element(self.ROOT_TAG)
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     element.set('xmlns:atom', Constants.XML_API_ATOM_NAMESPACE)
     element.set('name', self.name)
     element.set('backup_type', self.backup_type)
     element.set('rotation', self.rotation)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     xml += ET.tostring(element)
     return xml
示例#7
0
 def _obj_to_xml(self):
     xml = Constants.XML_HEADER
     element = ET.Element(self.ROOT_TAG)
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     element.set('xmlns:atom', Constants.XML_API_ATOM_NAMESPACE)
     element.set('name', self.name)
     element.set('backup_type', self.backup_type)
     element.set('rotation', self.rotation)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     xml += ET.tostring(element)
     return xml
示例#8
0
 def _obj_to_xml(self):
     element = ET.Element('server')
     xml = Constants.XML_HEADER
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     if self.name is not None:
         element.set('name', self.name)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     if self.accessIPv4 is not None:
         element.set('accessIPv4', self.accessIPv4)
     if self.accessIPv6 is not None:
         element.set('accessIPv6', self.accessIPv6)
     xml += ET.tostring(element)
     return xml
示例#9
0
 def _obj_to_xml(self):
     element = ET.Element('server')
     xml = Constants.XML_HEADER
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     if self.name is not None:
         element.set('name', self.name)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     if self.accessIPv4 is not None:
         element.set('accessIPv4', self.accessIPv4)
     if self.accessIPv6 is not None:
         element.set('accessIPv6', self.accessIPv6)
     xml += ET.tostring(element)
     return xml
示例#10
0
 def _obj_to_xml(self):
     elements_dict = {
         'name': self.name,
         'flavorRef': self.flavor_ref,
         'max_count': self.max_count,
         'min_count': self.min_count,
         'image_ref': self.image_ref,
         'user_data': self.user_data,
         'accessIPv4': self.accessIPv4,
         'accessIPv6': self.accessIPv6,
         'adminPass': self.admin_pass,
         'key_name': self.key_name,
         'config_drive': self.config_drive,
         'security_groups': self.security_groups
     }
     element = ET.Element('server')
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     block_device_ele = ET.Element('block_device_mapping_v2')
     block_device_ele.append(
         BlockDeviceMappingV2._obj_to_xml(self.block_device_mapping_v2))
     element.append(block_device_ele)
     if self.networks is not None:
         networks_ele = ET.Element('networks')
         for network_id in self.networks:
             network = ET.Element('network')
             network.set('uuid', network_id['uuid'])
             networks_ele.append(network)
         element.append(networks_ele)
     if self.personality is not None:
         personality_ele = ET.Element('personality')
         personality_ele.append(Personality._obj_to_xml(self.personality))
         element.append(personality_ele)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     if self.disk_config is not None:
         element.set('xmlns:OS-DCF',
                     Constants.XML_API_DISK_CONFIG_NAMESPACE)
         element.set('OS-DCF:diskConfig', self.disk_config)
     element = self._set_xml_etree_element(element, elements_dict)
     return ''.join([Constants.XML_HEADER, ET.tostring(element)])
示例#11
0
 def _obj_to_xml(self):
     elements_dict = {
         'name': self.name,
         'flavorRef': self.flavor_ref,
         'max_count': self.max_count,
         'min_count': self.min_count,
         'image_ref': self.image_ref,
         'user_data': self.user_data,
         'accessIPv4': self.accessIPv4,
         'accessIPv6': self.accessIPv6,
         'adminPass': self.admin_pass,
         'key_name': self.key_name,
         'config_drive': self.config_drive,
         'security_groups': self.security_groups
     }
     element = ET.Element('server')
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     block_device_ele = ET.Element('block_device_mapping_v2')
     block_device_ele.append(BlockDeviceMappingV2._obj_to_xml(
         self.block_device_mapping_v2))
     element.append(block_device_ele)
     if self.networks is not None:
         networks_ele = ET.Element('networks')
         for network_id in self.networks:
             network = ET.Element('network')
             network.set('uuid', network_id['uuid'])
             networks_ele.append(network)
         element.append(networks_ele)
     if self.personality is not None:
         personality_ele = ET.Element('personality')
         personality_ele.append(Personality._obj_to_xml(self.personality))
         element.append(personality_ele)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     if self.disk_config is not None:
         element.set('xmlns:OS-DCF',
                     Constants.XML_API_DISK_CONFIG_NAMESPACE)
         element.set('OS-DCF:diskConfig', self.disk_config)
     element = self._set_xml_etree_element(element, elements_dict)
     return ''.join([Constants.XML_HEADER, ET.tostring(element)])
示例#12
0
 def _obj_to_xml(self):
     element = ET.Element('rebuild')
     xml = Constants.XML_HEADER
     element.set('xmlns', Constants.XML_API_NAMESPACE)
     element.set('name', self.name)
     element.set('imageRef', self.image_ref)
     if self.admin_pass is not None:
         element.set('adminPass', self.admin_pass)
     if self.disk_config is not None:
         element.set('xmlns:OS-DCF',
                     Constants.XML_API_DISK_CONFIG_NAMESPACE)
         element.set('OS-DCF:diskConfig', self.disk_config)
     if self.metadata is not None:
         meta_ele = ET.Element('metadata')
         for key, value in self.metadata.items():
             meta_ele.append(Metadata._dict_to_xml(key, value))
         element.append(meta_ele)
     if self.networks is not None:
         networks_ele = ET.Element('networks')
         for network_id in self.networks:
             network = ET.Element('network')
             network.set('uuid', network_id['uuid'])
             networks_ele.append(network)
         element.append(networks_ele)
     if self.personality is not None:
         personality_ele = ET.Element('personality')
         personality_ele.append(Personality._obj_to_xml(self.personality))
         element.append(personality_ele)
     if self.user_data is not None:
         element.set('user_data', self.user_data)
     if self.accessIPv4 is not None:
         element.set('accessIPv4', self.accessIPv4)
     if self.accessIPv6 is not None:
         element.set('accessIPv6', self.accessIPv6)
     if self.key_name is not None:
         element.set('key_name', self.key_name)
     xml += ET.tostring(element)
     return xml