Пример #1
0
	def serialize_result(self, result):
		root = Element("return")
		
		SubElement(root, "status").text = str(result.status)
		SubElement(root, "message").text = result.message
		self._drop_log(root, result.log)
		
		return tostring(root, pretty_print = True)
Пример #2
0
	def _parse_input(self, root):
		if root.tag != "return":
			IllegalInput("Start tag must be 'return'. Is %s" % (root.tag, ))
			
		try:
			status = int(root.findtext("status"))
		except (ValueError, TypeError):
			raise IllegalInput("Illegal status in OrchestrationResult: %s" % (tostring(root), ))
		
		message = root.findtext("message")
		
		logbookelem = root.find("logbook")
		if logbookelem is not None and len(logbookelem):
			entries = logbookelem.find("entries") or ()
			log = Logbook(
						name = logbookelem.findtext("name", "<unknown>"),
						component = logbookelem.findtext("component", "<unknown>"),
						entries = [ entry.text for entry in entries ]
			)
		else:
			log = None
			
		return ProvisioningResult(status = status, message = message, log = log)
Пример #3
0
	def serialize_result(self, result):
		root = Element("return")
		self._fill_doc(root, result)
		return tostring(root, pretty_print = True)