def dumps(self, obj): """ @param obj: The Configuration object """ elem = ElementTree.Element("extensions") for extension in obj._objects(): if isinstance(extension, api.RulemlEvalGlobals): writer = EvalGlobalsWriter() childelem = writer.dumps(extension) if childelem != None: elem.append(childelem) else: if extension.ns != None and extension.ns != "": childelem = ElementTree.Element("{%s}%s" % (extension.ns, extension.tag)) else: childelem = ElementTree.Element(extension.tag) if extension.value != None: childelem.text = extension.value for attr in extension.attrs: childelem.set(attr, extension.attrs[attr]) childs = self._dump_childen(extension._objects()) for ch in childs: childelem.append(ch) elem.append(childelem) return elem
def dumps(self, obj): """ @param obj: The Option object """ elem = ElementTree.Element('icon', {'xlink:href' : obj.href}) return elem
def dumps(self, obj): """ @param obj: The Configuration object """ elem = ElementTree.Element('feature', {'ref' : obj.get_ref()}) if obj.get_name(): elem.set('name', obj.get_name()) if obj.get_type(): elem.set('type', obj.get_type()) if obj.get_id() != None: elem.set('id', obj.get_id()) if obj.get_relevant() != None: elem.set('relevant', obj.get_relevant()) if obj.get_constraint() != None: elem.set('constraint', obj.get_constraint()) dump_extension_attributes(obj, elem) for child in obj._objects(): """ Make sure that the object is mapped to an object in this model """ mobj = child._get_mapper('confml').map_object(child) writer = get_writer_for_class(mobj.__class__.__name__) childelem = writer.dumps(child) if childelem != None: elem.append(childelem) return elem
def dumps(self, obj): """ @param obj: The Configuration object """ elem = ElementTree.Element('desc') elem.text = obj.text return elem
def toresource(self, obj, res, indent=True): root = ElementTree.Element("metadata") root.set('xmlns', self.NAMESPACES[0]) if not obj.__class__ == Metadata: raise exceptions.IncorrectClassError( 'The given object is not a instance of %s' % Metadata) for key in obj.data.keys(): prop = ElementTree.SubElement(root, 'property') self.set_property(prop, key, obj.data[key]) if indent: persistence.indent(root) # To make the output the same in linux and windows # (needed to make testing easier) class LinesepNormalizerResource(object): def __init__(self, resource): self.resource = resource def write(self, data): if os.linesep != '\r\n': data = data.replace(os.linesep, '\r\n') self.resource.write(data) res = LinesepNormalizerResource(res) # some smarter way to implement adding of the encoding to the beginning of file res.write('<?xml version="1.0" encoding="%s"?>%s' % (self.encoding, os.linesep)) ElementTree.ElementTree(root).write(res)
def dumps(self, obj): """ @param obj: The ConfmlLocalPath object """ elem = ElementTree.Element('targetPath') if obj.readOnly: elem.set('readOnly', unicode(obj.readOnly)) return elem
def dumps(self, obj): """ @param obj: The Configuration object """ elem = ElementTree.Element('setting', {'ref' : obj.get_ref()}) self._set_setting_properties(elem, obj) return elem
def dumps(self, obj): """ @param obj: The Configuration object """ ref = obj.fqr.replace('.','/') elem = ElementTree.Element('setting', {'ref' : ref}) self._set_setting_properties(elem, obj) return elem
def dumps(self, obj): """ @param obj: The facet object """ classname = obj.__class__.__name__ elem = ElementTree.Element(self.MAPPING[classname]) if obj.value != None: elem.set('value', str(obj.value)) return elem
def dumps(self, obj): """ @param obj: The Configuration object """ elem = ElementTree.Element("meta") for metaproperty in obj: prefix = CV_NAMESPACE.get(metaproperty.ns, "") if prefix != "": #Including namespace to metadata element as well elem.set(("xmlns:%s" % prefix), metaproperty.ns) childelem = ElementTree.Element(prefix + ":" + metaproperty.tag) else: childelem = ElementTree.Element(metaproperty.tag) if metaproperty.value != None: childelem.text = metaproperty.value for attr in metaproperty.attrs: childelem.set(attr, metaproperty.attrs[attr]) elem.append(childelem) return elem
def dumps(self, obj): """ @param obj: The Option object """ elem = ElementTree.Element('property') if obj.name != None: elem.set('name', obj.name) if obj.value != None: elem.set('value', obj.value) if obj.unit != None: elem.set('unit', obj.unit) return elem
def _dump_childen(self, obj): childs = [] for child in obj: if child.ns != None and child.ns != "": childelem = ElementTree.Element("{%s}%s" % (child.ns, child.tag)) else: childelem = ElementTree.Element(child.tag) if child.value != None: childelem.text = child.value for attr in child.attrs: childelem.set(attr, child.attrs[attr]) chds = self._dump_childen(child._objects()) for ch in chds: childelem.append(ch) childs.append(childelem) return childs
def dumps(self, obj): """ @param obj: The Configuration object """ elem = ElementTree.Element("{%s}eval_globals" % (RULEML_NAMESPACES[0])) if obj.value != None: elem.text = obj.value if obj.file != None: elem.set('file', obj.file) return elem
def dumps(self, obj): """ @param obj: The Configuration object """ elem = ElementTree.Element('view', {'name' : obj.get_name()}) if obj.id != None: elem.set('id', obj.id) for child in obj._objects(): """ Make sure that the object is mapped to an object in this model """ mobj = child._get_mapper('confml').map_object(child) writer = get_writer_for_class(mobj.__class__.__name__) childelem = writer.dumps(child) if childelem != None: elem.append(childelem) return elem
def dumps(self, obj): """ @param obj: The Data object """ # Create a data hierarchy of the elem = ElementTree.Element(obj.get_ref()) if hasattr(obj,'get_map') and obj.get_map() is not None: elem.set('map', obj.get_map()) elif hasattr(obj,'get_value') and obj.get_value() is not None: elem.text = obj.get_value() if hasattr(obj,'template') and obj.template == True: elem.set('template','true') if hasattr(obj,'policy') and obj.policy != '': elem.set('extensionPolicy',obj.policy) if hasattr(obj,'empty') and obj.empty == True: elem.set('empty','true') for child in obj._objects(): writer = DataWriter() childelem = writer.dumps(child) if childelem != None: elem.append(childelem) return elem
def dumps(self, obj): """ @param obj: The Option object """ objdict = {} if obj.get_name() is not None: objdict['name'] = obj.get_name() if obj.get_value() is not None: objdict['value'] = obj.get_value() if obj.map is not None: objdict['map'] = obj.map if obj.relevant is not None: objdict['relevant'] = obj.relevant if obj.display_name is not None: objdict['displayName'] = obj.display_name if obj.map_value is not None: objdict['mapValue'] = obj.map_value if hasattr(obj,'extensionAttributes') and obj.extensionAttributes is not None and obj.extensionAttributes != []: for ext_attribute in obj.extensionAttributes: if ext_attribute.ns != None and ext_attribute.ns != "": objdict["{%s}%s" % (ext_attribute.ns, ext_attribute.name)] = str(ext_attribute.value) else: objdict[ext_attribute.name] = str(ext_attribute.value) elem = ElementTree.Element('option', objdict) return elem
def dumps(self,obj,indent=True): elem = ElementTree.Element("configuration") if self.configuration_namespace: elem.set("xmlns",self.configuration_namespace) if self.include_namespace: elem.set("xmlns:xi",self.include_namespace) if self.include_namespace: elem.set("xmlns:xlink",self.xlink_namespace) if self.schema_namespace: elem.set("xmlns:xs",self.schema_namespace) if obj.get_name(): elem.set("name", obj.get_name()) if obj.version != None: elem.set("version", obj.version) if obj.get_id(): elem.set('id', obj.get_id()) for child in obj._objects(): """ Make sure that the object is mapped to an object in this model """ mobj = child._get_mapper('confml').map_object(child) writer = get_writer_for_class(mobj.__class__.__name__) childelem = writer.dumps(child) elem.append(childelem) return elem
def test_set_property_with_only_key(self): elem = ElementTree.Element('property') prop = metadata.MetadataWriter().set_property(elem,'test','') self.assertEquals(prop.get('name'),'test') self.assertEquals(prop.get('value'),None)
def test_set_property(self): elem = ElementTree.Element('property') mwriter = metadata.MetadataWriter() prop_elem = mwriter.set_property(elem,'test','foof') self.assertTrue(prop_elem.get('name'),'test') self.assertTrue(prop_elem.get('value'),'foof')
def to_include(self,include): elem = ElementTree.Element("xi:include",{"href":include}) return elem