def writeXML(self, node, namespace): param = XML.SubElement(node, xmlutils.makeTag(namespace, self.getName())) for value in self.getValues(): # TODO: need to figure out proper value types text = XML.SubElement( param, xmlutils.makeTag(namespace, xmldefinitions.value_text)) text.text = value
def writeXML(self, node, namespace): value = self.getXMLNode(node, namespace) latitude = XML.SubElement(value, xmlutils.makeTag(namespace, xmldefinitions.geo_latitude)) latitude.text = self.mValue[0] longitude = XML.SubElement(value, xmlutils.makeTag(namespace, xmldefinitions.geo_longitude)) longitude.text = self.mValue[1]
def writeXML(self, node, namespace): start = XML.SubElement(node, xmlutils.makeTag(namespace, xmldefinitions.period_start)) start.text = self.mStart.getXMLText() if self.mUseDuration: duration = XML.SubElement(node, xmlutils.makeTag(namespace, xmldefinitions.period_duration)) duration.text = self.mDuration.getText() else: end = XML.SubElement(node, xmlutils.makeTag(namespace, xmldefinitions.period_end)) end.text = self.mEnd.getXMLText()
def writeXML(self, node, namespace): value = self.getXMLNode(node, namespace) code = XML.SubElement(value, xmlutils.makeTag(namespace, xmldefinitions.req_status_code)) code.text = self.mValue[0] description = XML.SubElement(value, xmlutils.makeTag(namespace, xmldefinitions.req_status_description)) description.text = self.mValue[1] if len(self.mValue) == 3 and self.mValue[2]: data = XML.SubElement(value, xmlutils.makeTag(namespace, xmldefinitions.req_status_data)) data.text = self.mValue[2]
def generateValueXML(self, node, namespace, novalue): prop = XML.SubElement(node, xmlutils.makeTag(namespace, self.getName())) # Write all parameters if len(self.mParameters): params = XML.SubElement(prop, xmlutils.makeTag(namespace, xmldefinitions.parameters)) for key in sorted(self.mParameters.keys()): for attr in self.mParameters[key]: if attr.getName().lower() != "value": attr.writeXML(params, namespace) # Write value if self.mValue and not novalue: self.mValue.writeXML(prop, namespace)
def writeXML(self, node, namespace): value = XML.SubElement( node, xmlutils.makeTag( namespace, xmldefinitions.value_date if self.isDateOnly() else xmldefinitions.value_date_time)) value.text = self.getXMLText()
def writeComponentsXML(self, node, namespace): if self.mComponents: comps = XML.SubElement(node, xmlutils.makeTag(namespace, xmldefinitions.components)) # Write out the remainder for component in self.sortedComponents(): component.writeXML(comps, namespace)
def writeXML(self, includeTimezones=None): # Make sure all required timezones are in this object self.includeMissingTimezones(includeTimezones=includeTimezones) # Root node structure root = XML.Element(xmlutils.makeTag(xmldefinitions.iCalendar20_namespace, xmldefinitions.icalendar)) super(Calendar, self).writeXML(root, xmldefinitions.iCalendar20_namespace) return root
def writeXMLFiltered(self, node, namespace, filter): # Component element comp = XML.SubElement(node, xmlutils.makeTag(namespace, self.getType())) # Each property self.writePropertiesFilteredXML(comp, namespace, filter) # Each component self.writeComponentsFilteredXML(comp, namespace, filter)
def writeXML(self, node, namespace): value = XML.SubElement( node, xmlutils.makeTag( namespace, xmldefinitions.value_date if self.isDateOnly() else xmldefinitions.value_date_time ) ) value.text = self.getXMLText()
def writeComponentsXML(self, node, namespace): if self.mComponents: comps = XML.SubElement( node, xmlutils.makeTag(namespace, xmldefinitions.components)) # Write out the remainder for component in self.sortedComponents(): component.writeXML(comps, namespace)
def writePropertiesXML(self, node, namespace): properties = XML.SubElement(node, xmlutils.makeTag(namespace, xmldefinitions.properties)) # Sort properties by name keys = self.sortedPropertyKeys() for key in keys: props = self.mProperties[key] for prop in props: prop.writeXML(properties, namespace)
def writePropertiesXML(self, node, namespace): properties = XML.SubElement( node, xmlutils.makeTag(namespace, xmldefinitions.properties)) # Sort properties by name keys = self.sortedPropertyKeys() for key in keys: props = self.mProperties[key] for prop in props: prop.writeXML(properties, namespace)
def writeComponentsFilteredXML(self, node, namespace, filter): if self.mComponents: comps = XML.SubElement(node, xmlutils.makeTag(namespace, xmldefinitions.components)) # Shortcut for all sub-components if filter.isAllSubComponents(): self.writeXML(comps, namespace) elif filter.hasSubComponentFilters(): for subcomp in self.sortedcomponents(): subfilter = filter.getSubComponentFilter(subcomp.getType()) if subfilter is not None: subcomp.writeXMLFiltered(comps, namespace, subfilter)
def writeComponentsFilteredXML(self, node, namespace, filter): if self.mComponents: comps = XML.SubElement( node, xmlutils.makeTag(namespace, xmldefinitions.components)) # Shortcut for all sub-components if filter.isAllSubComponents(): self.writeXML(comps, namespace) elif filter.hasSubComponentFilters(): for subcomp in self.sortedcomponents(): subfilter = filter.getSubComponentFilter(subcomp.getType()) if subfilter is not None: subcomp.writeXMLFiltered(comps, namespace, subfilter)
def writePropertiesFilteredXML(self, node, namespace, filter): props = XML.SubElement(node, xmlutils.makeTag(namespace, xmldefinitions.properties)) # Sort properties by name keys = self.sortedPropertyKeys() # Shortcut for all properties if filter.isAllProperties(): for key in keys: for prop in self.getProperties(key): prop.writeXML(props, namespace) elif filter.hasPropertyFilters(): for key in keys: for prop in self.getProperties(key): prop.writeXMLFiltered(props, namespace, filter)
def writePropertiesFilteredXML(self, node, namespace, filter): props = XML.SubElement( node, xmlutils.makeTag(namespace, xmldefinitions.properties)) # Sort properties by name keys = self.sortedPropertyKeys() # Shortcut for all properties if filter.isAllProperties(): for key in keys: for prop in self.getProperties(key): prop.writeXML(props, namespace) elif filter.hasPropertyFilters(): for key in keys: for prop in self.getProperties(key): prop.writeXMLFiltered(props, namespace, filter)
def writeXML(self, node, namespace): param = XML.SubElement(node, xmlutils.makeTag(namespace, self.getName())) for value in self.getValues(): # TODO: need to figure out proper value types text = XML.SubElement(param, xmlutils.makeTag(namespace, xmldefinitions.value_text)) text.text = value
def getXMLNode(self, node, namespace): return XML.SubElement( node, xmlutils.makeTag(namespace, self._xmlMap[self.getType()]))
def getXMLNode(self, node, namespace): return XML.SubElement(node, xmlutils.makeTag(namespace, self._xmlMap[self.getType()]))