Example #1
0
 def onsheetok(self, event):
     del self.dom
     doctype = dom.getDOMImplementation().createDocumentType(
         "soulforge_character", None, '')
     self.dom = dom.getDOMImplementation().createDocument(
         None, "soulforge_character", doctype)
     self.universe.sheet2xml(self.sh.sheet, self.dom)
     self.sh.Destroy()
     self.populatefields()
     self.modified = True
     self.updategui()
Example #2
0
    def get_records(self, url):
        """
        Returns the records listed in the webpage given as
        parameter as a xml String.

        @param url: the url of the Journal, Book, Protocol or Reference work
        """
        page = urllib2.urlopen(url)
        pages = [BeautifulSoup(page)]
        #content spread over several pages?
        numpag = pages[0].body.findAll('span',
                                       attrs={'class': 'number-of-pages'})
        if len(numpag) > 0:
            if re.search('^\d+$', numpag[0].string):
                for i in range(int(numpag[0].string) - 1):
                    page = urllib2.urlopen('%s/page/%i' % (url, i + 2))
                    pages.append(BeautifulSoup(page))
            else:
                print("number of pages %s not an integer" % (numpag[0].string))
        impl = getDOMImplementation()
        doc = impl.createDocument(None, "collection", None)
        links = []
        for page in pages:
            links += page.body.findAll('p', attrs={'class': 'title'})
            links += page.body.findAll('h3', attrs={'class': 'title'})
        for link in links:
            record = self._get_record(link)
            doc.firstChild.appendChild(record)
        return doc.toprettyxml()
Example #3
0
def store_params(*args):
    channels = {}
    for p in args:
        for ch in p.ch:
            if ch not in channels:
                channels[ch] = p
            else:
                raise AssertionError( "Duplicate channel {0} in parameter {1}. Already defined in {2} param.".format(ch, p.name, channells[ch].name) )
    
    impl = xml.getDOMImplementation()
    doc = impl.createDocument(None, None, None)
    root = doc.appendChild(doc.createElement("pydiag-test"))
    root.setAttribute("version", "0.1")
    info_node = root.appendChild(doc.createElement("info"))
    chgroups_node = info_node.appendChild(doc.createElement("chgroup"))
    
    max_len = max( [len(p) for p in args] )
    for p in args:
        p.expand(max_len)
    
    ch_list_sorted = sorted([key for key in channels], key = lambda i: i)
    root.setAttribute("channels", ",".join( [str(i) for i in ch_list_sorted]))


    for p in args:
        group_node = chgroups_node.appendChild(doc.createElement("group"))
        group_node.setAttribute("name", str(p.name))
        # @type p param
        group_node.setAttribute("channels", ",".join( [str(i) for i in p.ch ]))

        #Добавляем комментарии если они есть
        if len( p.comments ) != 0:
                group_comments_node = group_node.appendChild(doc.createElement("comments"))
                for tn in sorted([i for i in p.comments], key = lambda item: item ):
                    comment_node = group_comments_node.appendChild(doc.createElement("comment"))
                    comment_node.setAttribute("tn", str(tn))
                    comment_node.setAttribute("content", p.comments[tn])
                    

    for tn in xrange(max_len):
        tn_node = root.appendChild(doc.createElement("tn"))
        tn_node.setAttribute("number", str(tn))
        
        tn_data = []
        tn_mask = []
        tn_io   = []
        for ch in ch_list_sorted:
            p = channels[ch]
            tn_data.append( str (get_bit(p[tn][0], p.nbit(ch))) )
            tn_mask.append( str( get_bit(p[tn][1].mask, p.nbit(ch))))
            tn_io.append( str(  p[tn][2] ))
        tn_data = "".join(tn_data)
        tn_mask = "".join(tn_mask)
        tn_io = "".join(tn_io)

        tn_node.setAttribute("data", tn_data)
        tn_node.setAttribute("mask", tn_mask)
        tn_node.setAttribute("io", tn_io)

    print doc.toprettyxml()
    def create_xml_document(self, root_element_name):

        '''Create a new XML document with a child element object having the given
        root_element_name.
        '''

        return getDOMImplementation().createDocument(None, root_element_name, None)
Example #5
0
def _ft_gen_texbundle_xml(
        b64bytes:bytes,
        entryfile="main.tex",
        worker='xelatex',
        timeout=60) -> str:
    """
    Generate xmlbundle from base64 bytes and given metadata as api_1_0.

    :returns: XML-formatted bundle string
    :rtype: str
    """

    impl = dom.getDOMImplementation()
    doc = impl.createDocument(None, "xmlbundle", None)
    reqNode = doc.createElement('request')
    workerNode = doc.createElement('worker')
    workerNode.appendChild(doc.createTextNode(worker))
    reqNode.appendChild(workerNode)
    timeoutNode = doc.createElement('timeout')
    timeoutNode.appendChild(doc.createTextNode(str(timeout)))
    reqNode.appendChild(timeoutNode)
    entryNode = doc.createElement('entryfile')
    entryNode.appendChild(doc.createTextNode(str(entryfile)))
    reqNode.appendChild(entryNode)
    doc.documentElement.appendChild(reqNode)
    bundleNode = doc.createElement('bundle')
    bundleNode.appendChild(doc.createTextNode(b64bytes.decode('UTF-8')))
    doc.documentElement.appendChild(bundleNode)

    return doc.toxml()
    def xmlIfExtCloneTree (self, rootElementCopy):
        domImpl = getDOMImplementation()
#        documentCopy = domImpl.createDocument(rootElementCopy.xmlIfExtGetNamespaceURI(), rootElementCopy.xmlIfExtGetTagName(), None)
        documentCopy = domImpl.createDocument(None, None, None)
#        documentCopy = copy.copy(self.document)
        documentCopy.documentElement = rootElementCopy.element
        return self.__class__(documentCopy)
Example #7
0
    def createDom(self, nsUri, qualifName, dtName):
        self.reset()
        # for now, we live the doctype 'dtd' out.
        dt = None  #Dom.getDOMImplementation().createDocumentType("","","")

        self._doc = Dom.getDOMImplementation().createDocument(
            nsUri, qualifName, dt)
Example #8
0
    def get_records(self, url):
        """
        Returns the records listed in the webpage given as
        parameter as a xml String.

        @param url: the url of the Journal, Book, Protocol or Reference work
        """
        page = urllib2.urlopen(url)
        pages = [BeautifulSoup(page)]
        #content spread over several pages?
        numpag = pages[0].body.findAll('span', attrs={'class': 'number-of-pages'})
        if len(numpag) > 0:
            if re.search('^\d+$', numpag[0].string):
                for i in range(int(numpag[0].string)-1):
                    page = urllib2.urlopen('%s/page/%i' % (url, i+2))
                    pages.append(BeautifulSoup(page))
            else:
                print("number of pages %s not an integer" % (numpag[0].string))
        impl = getDOMImplementation()
        doc = impl.createDocument(None, "collection", None)
        links = []
        for page in pages:
            links += page.body.findAll('p', attrs={'class': 'title'})
            links += page.body.findAll('h3', attrs={'class': 'title'})
        for link in links:
            record = self._get_record(link)
            doc.firstChild.appendChild(record)
        return doc.toprettyxml()
Example #9
0
    def __init__(self, title, description, link,
            copyright=None,
            email=None,
            pub_date=None,
            rss_link=None):
        self.document = getDOMImplementation().createDocument(None, "rss", None)
        rss = self.document.documentElement
        rss.setAttribute("version", "2.0")
        rss.setAttribute("xmlns:atom", "http://www.w3.org/2005/Atom")
        channel = self.document.createElement("channel")

        elem = self.document.createElement("title")
        elem.appendChild(self.document.createTextNode(title))
        channel.appendChild(elem)

        elem = self.document.createElement("description")
        elem.appendChild(self.document.createTextNode(description))
        channel.appendChild(elem)
        
        elem = self.document.createElement("link")
        elem.appendChild(self.document.createTextNode(link))
        channel.appendChild(elem)
        
        elem = self.document.createElement("docs")
        elem.appendChild(self.document.createTextNode("http://www.rssboard.org/rss-specification"))
        channel.appendChild(elem)
        
        elem = self.document.createElement("generator")
        elem.appendChild(self.document.createTextNode("Mr. Fusion"))
        channel.appendChild(elem)
        
        elem = self.document.createElement("lastBuildDate")
        elem.appendChild(self.document.createTextNode(formatdate()))
        channel.appendChild(elem)
        
        if copyright is not None:
            elem = self.document.createElement("copyright")
            elem.appendChild(self.document.createTextNode(copyright))
            channel.appendChild(elem)
        
        if email is not None:
            elem = self.document.createElement("managingEditor")
            elem.appendChild(self.document.createTextNode(email))
            channel.appendChild(elem)
            elem = self.document.createElement("webMaster")
            elem.appendChild(self.document.createTextNode(email))
            channel.appendChild(elem)
        
        if pub_date is not None:
            elem = self.document.createElement("pubDate")
            elem.appendChild(self.document.createTextNode(format_rfc822_date(pub_date)))
            channel.appendChild(elem)
        
        if rss_link is not None:
            elem = self.document.createElementNS("http://www.w3.org/2005/Atom", "atom:link")
            elem.setAttribute("rel", "self")
            elem.setAttribute("href", rss_link)
            channel.appendChild(elem)
        
        rss.appendChild(channel)
Example #10
0
def setupDefaults():
    dom_impl = getDOMImplementation()
    doc = dom_impl.createDocument(MATHML_NAMESPACE_URI, u"math", None)

    logbase = doc.createElementNS(MATHML_NAMESPACE_URI, u'cn')
    logbase.appendChild(doc.createTextNode(u'10'))
    DEFAULT_DICT['logbase'] = logbase
Example #11
0
def setupDefaults():
    dom_impl = getDOMImplementation()
    doc = dom_impl.createDocument(MATHML_NAMESPACE_URI, u"math", None)

    logbase = doc.createElementNS(MATHML_NAMESPACE_URI, u'cn')
    logbase.appendChild( doc.createTextNode(u'10') )
    DEFAULT_DICT['logbase'] = logbase
Example #12
0
 def __init__(self, document=None):
     self.__common_methods = METHODS_BY_ELEMENT_NAME.get(None, ())
     if document is None:
         dom_impl = getDOMImplementation()
         document = dom_impl.createDocument(MATHML_NAMESPACE_URI, u"math", None)
     self.__augmentElements(document)
     self._document = document
Example #13
0
    def __init__(self,
                 center_ra=None,
                 center_dec=None,
                 position_angle=0,
                 target_name='',
                 mask_name='',
                 equinox=2000,
                 proposal_code='',
                 proposer='',
                 creator='',
                 validated=False):
        super(QObject, self).__init__()
        self.__center_ra = None
        self.__center_dec = None
        self.__position_angle = None
        self.__equinox = None
        self.add_center_ra(center_ra)
        self.add_center_dec(center_dec)
        self.add_position_angle(position_angle)
        self.add_equinox(equinox)

        self.target_name = target_name
        self.mask_name = mask_name
        self.proposal_code = proposal_code
        self.proposer = proposer
        self.creator = creator
        self.validated = validated

        #create the slitlets
        self.slitlets = Slitlets()

        #needed for writing xml
        self.impl = getDOMImplementation()
Example #14
0
  def _createHadoopSiteXml(self):
    if self.restart:
      if not os.path.exists(self.confdir):
        os.makedirs(self.confdir)
    else:
      assert os.path.exists(self.confdir) == False
      os.makedirs(self.confdir)

    implementation = getDOMImplementation()
    doc = implementation.createDocument('', 'configuration', None)
    comment = doc.createComment("This is an auto generated hadoop-site.xml, do not modify")
    topElement = doc.documentElement
    topElement.appendChild(comment)
    
    finalAttr = self.desc.getfinalAttrs()
    self.createXML(doc, finalAttr, topElement, True)
    attr = {}
    attr1 = self.desc.getAttrs()
    for k,v in attr1.iteritems():
      if not finalAttr.has_key(k):
        attr[k] = v
    self.createXML(doc, attr, topElement, False)
              
    
    siteName = os.path.join(self.confdir, "hadoop-site.xml")
    sitefile = file(siteName, 'w')
    print >> sitefile, topElement.toxml()
    sitefile.close()
    self.log.debug('created %s' % (siteName))
Example #15
0
    def _createHadoopSiteXml(self):
        if self.restart:
            if not os.path.exists(self.confdir):
                os.makedirs(self.confdir)
        else:
            assert os.path.exists(self.confdir) == False
            os.makedirs(self.confdir)

        implementation = getDOMImplementation()
        doc = implementation.createDocument('', 'configuration', None)
        comment = doc.createComment(
            "This is an auto generated hadoop-site.xml, do not modify")
        topElement = doc.documentElement
        topElement.appendChild(comment)

        finalAttr = self.desc.getfinalAttrs()
        self.createXML(doc, finalAttr, topElement, True)
        attr = {}
        attr1 = self.desc.getAttrs()
        for k, v in attr1.iteritems():
            if not finalAttr.has_key(k):
                attr[k] = v
        self.createXML(doc, attr, topElement, False)

        siteName = os.path.join(self.confdir, "hadoop-site.xml")
        sitefile = file(siteName, 'w')
        print >> sitefile, topElement.toxml()
        sitefile.close()
        self.log.debug('created %s' % (siteName))
Example #16
0
 def xmlIfExtCloneTree(self, rootElementCopy):
     domImpl = getDOMImplementation()
     #        documentCopy = domImpl.createDocument(rootElementCopy.xmlIfExtGetNamespaceURI(), rootElementCopy.xmlIfExtGetTagName(), None)
     documentCopy = domImpl.createDocument(None, None, None)
     #        documentCopy = copy.copy(self.document)
     documentCopy.documentElement = rootElementCopy.element
     return self.__class__(documentCopy)
 def end(self):
     from xml.dom import getDOMImplementation
     impl = getDOMImplementation()
     doc = impl.createDocument(None, "messages", None)
     el_messages = doc.documentElement
     for message in self.messages:
         el_messages.appendChild(self.message_factory.create(doc, message))
     self.output.write(doc.toprettyxml(encoding = self.encoding))
Example #18
0
 def __init__(self, document=None):
     self.__common_methods = METHODS_BY_ELEMENT_NAME.get(None, ())
     if document is None:
         dom_impl = getDOMImplementation()
         document = dom_impl.createDocument(MATHML_NAMESPACE_URI, u"math",
                                            None)
     self.__augmentElements(document)
     self._document = document
Example #19
0
    def __init__(self, size=(300, 300)):
        self.verbose = 0
        self.width, self.height = self.size = size
        # self.height = size[1]
        self.code = []
        self.style = {}
        self.path = ''
        self._strokeColor = self._fillColor = self._lineWidth = \
            self._font = self._fontSize = self._lineCap = \
            self._lineJoin = self._color = None

        implementation = getDOMImplementation('minidom')
        self.doc = implementation.createDocument(None, "svg", None)
        self.svg = self.doc.documentElement
        self.svg.setAttribute("width", str(size[0]))
        self.svg.setAttribute("height", str(self.height))

        #these suggested by Tim Roberts
        self.svg.setAttribute("xmlns", "http://www.w3.org/2000/svg")
        self.svg.setAttribute("xmlns:link", "http://www.w3.org/1999/xlink")
        self.svg.setAttribute("version", "1.0")
        self.svg.setAttribute("baseProfile", "full")

        title = self.doc.createElement('title')
        text = self.doc.createTextNode('...')
        title.appendChild(text)
        self.svg.appendChild(title)

        desc = self.doc.createElement('desc')
        text = self.doc.createTextNode('...')
        desc.appendChild(text)
        self.svg.appendChild(desc)

        self.setFont(STATE_DEFAULTS['fontName'], STATE_DEFAULTS['fontSize'])
        self.setStrokeColor(STATE_DEFAULTS['strokeColor'])
        self.setLineCap(2)
        self.setLineJoin(0)
        self.setLineWidth(1)

        # Add a rectangular clipping path identical to view area.
        clipPath = transformNode(self.doc, "clipPath", id="clip")
        clipRect = transformNode(self.doc,
                                 "rect",
                                 x=0,
                                 y=0,
                                 width=self.width,
                                 height=self.height)
        clipPath.appendChild(clipRect)
        self.svg.appendChild(clipPath)

        self.groupTree = transformNode(
            self.doc,
            "g",
            id="group",
            transform="scale(1,-1) translate(0,-%d)" % self.height,
            style="clip-path: url(#clip)")
        self.svg.appendChild(self.groupTree)
        self.currGroup = self.groupTree
Example #20
0
def ActivateOrg(connStr,
                org_cd,
                status,
                eff_date,
                output_file,
                parent_rel=False):
    assert (status is not None), print('Org status is None\n')
    assert (eff_date is not None), print('Org status eff date is None\n')
    orgs = getAllChildren(connStr, org_cd)
    if (orgs is None):
        return
    dom_imp = getDOMImplementation()
    org_api_int = dom_imp.createDocument('orgapiload', 'orgapiload', None)
    root_element = org_api_int.documentElement
    root_element.setAttribute("global_version", "1.0")
    for i in range(0, len(orgs)):
        assert (orgs[i].code is not None), print('Org entry code is None \n')
        assert (orgs[i].level
                is not None), print('Org entry level code is None for org ' +
                                    orgs[i].code + '\n')
        #assert (orgs[i].location is not None), print('Org location name is None for org ' + orgs[i].code + '\n')
        assert (orgs[i].name
                is not None), print('Org entry name is None for org ' +
                                    orgs[i].code + '\n')

        if orgs[i].location is None:
            orgs[i].location = orgs[i].name

        org_entry_node = org_api_int.createElement("entry")
        root_element.appendChild(org_entry_node)
        org_entry_node.setAttribute("org_cd", orgs[i].code)
        org_entry_node.setAttribute("org_level_cd", orgs[i].level)
        org_entry_node.setAttribute("locationname", orgs[i].location)
        org_entry_node.setAttribute("name", orgs[i].name)
        status_node = org_api_int.createElement("status")
        status_node.setAttribute("code", status)
        status_node.setAttribute("eff_date", eff_date)
        org_entry_node.appendChild(status_node)
        if (parent_rel and orgs[i].parent_cd is not None):
            assert (orgs[i].parent_level
                    is not None), print('Parent level code is None for org ' +
                                        orgs[i].code + '\n')
            assert (orgs[i].parent_eff_date
                    is not None), print('Parent eff date is None for org ' +
                                        orgs[i].code + '\n')
            orgrel_node = org_api_int.createElement("orgrel")
            orgrel_node.setAttribute("org_cd", orgs[i].parent_cd)
            orgrel_node.setAttribute("org_org_lvl_cd", orgs[i].parent_level)
            orgrel_node.setAttribute("eff_date",
                                     orgs[i].parent_eff_date.__str__())
            org_entry_node.appendChild(orgrel_node)

    fd = open(output_file, 'w')
    fd.write(org_api_int.toxml())  #"iso-8859-1"))
    #print org_api_int.toxml() >> fd
    #"iso-8859-1")
    fd.close()
Example #21
0
    def __init__(self, svn_path, repos_path, item_url, feed_file, max_items, feed_url):
        Svn2Feed.__init__(self, svn_path, repos_path, item_url, feed_file, max_items, feed_url)
        from xml.dom import getDOMImplementation

        self.dom_impl = getDOMImplementation()

        self.pickle_file = self.feed_file + ".pickle"
        if os.path.exists(self.pickle_file):
            self.document = pickle.load(open(self.pickle_file, "r"))
            self.feed = self.document.getElementsByTagName("feed")[0]
        else:
            self._init_atom_document()
def convert_textgraph_to_xml(textgraph):
    impl = getDOMImplementation()
    newdoc = impl.createDocument(None, "root", None)
    root = newdoc.documentElement
    latest = root
    annotations_to_add = deque(textgraph.annotations_sorted)
    for counter, text_token in enumerate(textgraph.text_tokens):
        print(counter, text_token)
        if annotations_to_add[0].range_start == counter:
            print(annotations_to_add.popleft())
    return newdoc
    pass
Example #23
0
def getRecordsForKeywords(n, keywordFile):
        impl = getDOMImplementation()
        doc = impl.createDocument(None, "root", None) 
        keywords = open(keywordFile)
        for keyword in keywords:
                print "Querying for " + str(n)+ " records using keyword: " + keyword
                dom = run(n, keyword)
                for record in dom.getElementsByTagNameNS(SRW, 'record'):
                        doc.firstChild.appendChild(record)
        print "Done"
        #print doc.toxml('utf-8')
        return doc.toxml('utf-8')
Example #24
0
    def __init__(self, size=(300,300)):
        self.verbose = 0
        self.width, self.height = self.size = size
        # self.height = size[1]
        self.code = []
        self.style = {}
        self.path = ''
        self._strokeColor = self._fillColor = self._lineWidth = \
            self._font = self._fontSize = self._lineCap = \
            self._lineJoin = self._color = None

        implementation = getDOMImplementation('minidom')
        self.doc = implementation.createDocument(None, "svg", None)
        self.svg = self.doc.documentElement
        self.svg.setAttribute("width", str(size[0]))
        self.svg.setAttribute("height", str(self.height))

        #these suggested by Tim Roberts
        self.svg.setAttribute("xmlns", "http://www.w3.org/2000/svg")
        self.svg.setAttribute("xmlns:link", "http://www.w3.org/1999/xlink")
        self.svg.setAttribute("version", "1.0")
        self.svg.setAttribute("baseProfile", "full")

        title = self.doc.createElement('title')
        text = self.doc.createTextNode('...')
        title.appendChild(text)
        self.svg.appendChild(title)

        desc = self.doc.createElement('desc')
        text = self.doc.createTextNode('...')
        desc.appendChild(text)
        self.svg.appendChild(desc)

        self.setFont(STATE_DEFAULTS['fontName'], STATE_DEFAULTS['fontSize'])
        self.setStrokeColor(STATE_DEFAULTS['strokeColor'])
        self.setLineCap(2)
        self.setLineJoin(0)
        self.setLineWidth(1)

        # Add a rectangular clipping path identical to view area.
        clipPath = transformNode(self.doc, "clipPath", id="clip")
        clipRect = transformNode(self.doc, "rect", x=0, y=0,
            width=self.width, height=self.height)
        clipPath.appendChild(clipRect)
        self.svg.appendChild(clipPath)

        self.groupTree = transformNode(self.doc, "g",
            id="group",
            transform="scale(1,-1) translate(0,-%d)" % self.height,
            style="clip-path: url(#clip)")
        self.svg.appendChild(self.groupTree)
        self.currGroup = self.groupTree
Example #25
0
def main():
    try:
        processOutput = subprocess.check_output(sys.argv[2:])
        retVal = 0
    except (OSError):
        sys.exit(1)
    except subprocess.CalledProcessError as exc:
        processOutput = exc.output
        retVal = exc.returncode

    data = json.loads(processOutput)
    impl = getDOMImplementation()

    doc = impl.createDocument(None, "testsuite", None)
    root = doc.documentElement

    totaltests = int(data["passed"]) + int(data["failed"])
    root.setAttribute("name", data["name"])
    root.setAttribute("tests", str(totaltests))
    root.setAttribute("errors", "0")
    root.setAttribute("failures", data["failed"])
    props = doc.createElement("properties")
    setProperty(doc, props, "compiled", data["compiled"])
    setProperty(doc, props, "time", data["time"])
    setProperty(doc, props, "ucunit-version", data["version"])
    root.appendChild(props)

    for tc in data['testcases']:
        if 'testcasename' in tc:
            tcelement = doc.createElement('testcase')
            tcelement.setAttribute("name", tc['testcasename'])
            failures = ""
            stdout = ""
            for check in tc["checks"]:
                if "result" in check:
                    if check["result"] == "passed":
                        stdout += checkToString(check)
                    else:
                        failures += checkToString(check)
            root.appendChild(tcelement)
            sysout = doc.createElement('system-out')
            sysout.appendChild(doc.createCDATASection(stdout))
            tcelement.appendChild(sysout)
            if tc["result"] != "passed":
                f = doc.createElement("failure")
                f.appendChild(doc.createTextNode(failures))
                tcelement.appendChild(f)

    with open(sys.argv[1], mode='w') as fh:
        fh.write(doc.toxml('utf-8').decode('utf-8'))

    sys.exit(retVal)
	def createXMLFile(self,tag,list_options):
		impl = getDOMImplementation()
		self.xmldoc = impl.createDocument(None, tag, None)
		top_element = self.xmldoc.documentElement
		#top_element.appendChild(text)
		for option in list_options:
			var = option[0]
			value = option[1]
			attr = self.xmldoc.createAttribute(var)
			top_element.setAttributeNode(attr)
			top_element.attributes[var]._set_value(value)
		xmlcontent = self.xmldoc.toprettyxml()
		self._saveFile(xmlcontent)	
Example #27
0
	def createXMLFile(self,tag,list_options):
		impl = getDOMImplementation()
		self.xmldoc = impl.createDocument(None, tag, None)
		top_element = self.xmldoc.documentElement
		#top_element.appendChild(text)
		for option in list_options:
			var = option[0]
			value = option[1]
			attr = self.xmldoc.createAttribute(var)
			top_element.setAttributeNode(attr)
			top_element.attributes[var]._set_value(value)
		xmlcontent = self.xmldoc.toprettyxml()
		self._saveFile(xmlcontent)	
Example #28
0
    def __init__(self, svn_path, repos_path, item_url, feed_file, max_items,
                 feed_url):
        Svn2Feed.__init__(self, svn_path, repos_path, item_url, feed_file,
                          max_items, feed_url)
        from xml.dom import getDOMImplementation
        self.dom_impl = getDOMImplementation()

        self.pickle_file = self.feed_file + ".pickle"
        if os.path.exists(self.pickle_file):
            self.document = pickle.load(open(self.pickle_file, "r"))
            self.feed = self.document.getElementsByTagName('feed')[0]
        else:
            self._init_atom_document()
Example #29
0
File: bml.py Project: hfs/txt2blink
 def write(self, writer):
     impl = getDOMImplementation()
     doctype = impl.createDocumentType(
         "bml", None, "http://www.blinkenlights.de/dtd/bml.dtd")
     doc = impl.createDocument(None, "blm", doctype)
     root = doc.documentElement
     root.attributes['width'] = str(self.width)
     root.attributes['height'] = str(self.height)
     root.attributes['bits'] = str(self.bits)
     root.attributes['channels'] = str(self.channels)
     self.addHeader(doc)
     self.addFrames(doc)
     PrettyPrint(doc, writer, indent="\t", encoding="utf-8")
Example #30
0
def purgeBatchForOneDomainToXml(purgeBatch):
    doc = dom.getDOMImplementation().createDocument('', 'purge-paths', '')
    purgeRootNode = util.getChildNode(doc, 'purge-paths')
    util.addElement(doc, purgeRootNode, 'version', "1.0.0")
    urls = purgeBatch.urls
    if urls is not None and len(urls) > 0 :
        for url in urls:
            util.addElement(doc, purgeRootNode, 'file-path', url)
    dirs = purgeBatch.dirs
    if dirs is not None and len(dirs) > 0:
        for dirItem in dirs:
            util.addElement(doc, purgeRootNode, "dir-path", dirItem)
    return doc.toprettyxml(indent = "", newl="", encoding = 'utf-8')
Example #31
0
 def __load_cache(self):
     try:
         self.xmlCache = minidom.parse(self.cacheName)
         top = self.xmlCache.documentElement
         accountElements = top.getElementsByTagName(ACCOUNT_ELEMENT)
         for element in accountElements:
             accountData = self.__load_account(element)
             self.new_account(self, **accountData)
     except (IOError, ExpatError):
         xmlImp = getDOMImplementation()
         self.xmlCache = xmlImp.createDocument(None,
                                               "Tinymail_Account_Cache",
                                               None)
Example #32
0
def initDoc(namespace):
    impl = getDOMImplementation()
    doc = impl.createDocument(namespace, 'registryObjects', None)

    appendAttribute(doc, doc.documentElement, namespace, 'xmlns',
                    'http://ands.org.au/standards/rif-cs/registryObjects')
    appendAttribute(doc, doc.documentElement, namespace, 'xsi:schemaLocation', \
        'http://ands.org.au/standards/rif-cs/registryObjects http://services.ands.org.au/documentation/rifcs/schema/registryObjects.xsd')
    appendAttribute(doc, doc.documentElement, namespace, 'xmlns:xsi',
                    'http://www.w3.org/2001/XMLSchema-instance')
    appendAttribute(doc, doc.documentElement, namespace, 'xmlns:rif',
                    'http://ands.org.au/standards/rif-cs/registryObjects')
    return doc
Example #33
0
def purgeBatchForOneDomainToXml(purgeBatch):
    doc = dom.getDOMImplementation().createDocument('', 'purge-paths', '')
    purgeRootNode = util.getChildNode(doc, 'purge-paths')
    util.addElement(doc, purgeRootNode, 'version', "1.0.0")
    urls = purgeBatch.urls
    if urls is not None and len(urls) > 0:
        for url in urls:
            util.addElement(doc, purgeRootNode, 'file-path', url)
    dirs = purgeBatch.dirs
    if dirs is not None and len(dirs) > 0:
        for dirItem in dirs:
            util.addElement(doc, purgeRootNode, "dir-path", dirItem)
    return doc.toprettyxml(indent="", newl="", encoding='utf-8')
Example #34
0
    def __init__(self,xmlTitle="LHCbNightlies"):
        '''Create the basic XML'''
        xmlImplementation = xmlDOM.getDOMImplementation()
        xmlDoc = xmlImplementation.createDocument(None,xmlTitle, None)
        self.xmlDoc = xmlDoc
        self.fileName = time.strftime("NightliesMessages_%Y%m%d_%H%M%S.xml", time.localtime())
        self.namespace = "LHCbNightlies"

        self.foundLineagesList = []
        self.foundLeafList = []
        self.lineageList = []
        self.lineageDict = {}
        self.foundNodesList = []
        self.keyList = []
Example #35
0
def prefetchToXml(purgeBatch):
    ''' PurgeBatch 对象 转换成 用来预缓存的xml '''
    doc = dom.getDOMImplementation().createDocument('', 'prefetch-urls', '')
    purgeRootNode = util.getChildNode(doc, 'prefetch-urls')
    util.addElement(doc, purgeRootNode, 'version', "1.0.0")
    urls = purgeBatch.urls
    if urls is not None and len(urls) > 0:
        for url in urls:
            util.addElement(doc, purgeRootNode, 'prefetch-url', url)
    dirs = purgeBatch.dirs
    if dirs is not None and len(dirs) > 0:
        for dirItem in dirs:
            util.addElement(doc, purgeRootNode, "prefetch-url", dirItem)
    return doc.toprettyxml(indent = "", newl="", encoding = 'utf-8')
Example #36
0
def route_to_gpx(sentences, name, description):
    """
    Create GPX doc with a route that contains waypoints.
    
    1.  Save waypoint as {name : sentence} map.
    2.  Flatten route sentences into a single list of waypoints.
        This presumes the :class:`nmeatools.nmea_data.GPRTE` sentences
        are already in their proper order.
    
    :param sentences: iterable sequence of :class:`nmeatools.nmea_data.GPWPL` and
        :class:`nmeatools.nmea_data.GPRTE` instances
    :param name: The string name to put in the metadata
    :param description: the string description to put in the metadata
    :returns: ``<gpx>`` element containing the ``<rte>`` and ``<rtpte>`` waypoints.
    
    """
    names = set()
    waypoints = {}
    route_points = []
    for s in sentences:
        logger.info(f"{s}")
        if s._name == 'GPWPL':
            waypoints[s.name] = s
        elif s._name == 'GPRTE':
            route_points.extend(s.waypoints)
            names.add(s.id)
        else:
            assert s._name not in (
                'GPWPL', 'GPRTE'), f"Unexpected NMEA capture document {s}"

    impl = getDOMImplementation()
    document = impl.createDocument(None, None, None)
    gpx = build_gpx(document, name, description)

    rte = document.createElementNS(NAMESPACE, 'rte')
    name_node = document.createElementNS(NAMESPACE, "name")
    name_node.appendChild(document.createTextNode(", ".join(names)))
    rte.appendChild(name_node)
    desc_node = document.createElementNS(NAMESPACE, "desc")
    desc_node.appendChild(document.createTextNode(""))
    rte.appendChild(desc_node)
    gpx.appendChild(rte)

    for rp in route_points:
        s = waypoints[rp]
        wpt = build_routepoint(document, s)
        rte.appendChild(wpt)

    return document
def createJUnitRptTemplate():
    try:
        #Create a new xml document
        impl = dom.getDOMImplementation()
        doc = impl.createDocument(None, 'testsuite', None)
        root = doc.documentElement
        #Append attributes to root element
        ts_attributes = {'name':'', 'skips':'0', 'failures':'0', 'errors':'0', 'tests':'0', 'time':'0.0'}
        for (k,v) in ts_attributes.items():
            attr = doc.createAttribute(k)
            attr.value = v
            root.setAttributeNode(attr)
        return doc
    except Exception, ex:
        raise ex
Example #38
0
 def CreateXmlDom(self, dataName):
     """ 创建XML构造DOM """
     domImp = getDOMImplementation()
     dom = domImp.createDocument(None, None, None)
     
     newNode = dom.createElement(DATA_ROOT_NAME)
     dataNode1 = dom.appendChild(newNode)
     
     newNode = dom.createElement(DATA_RECORD_NAME)
     dataNode2 = dataNode1.appendChild(newNode)
     
     newNode = dom.createElement("g_%s" %dataName)
     dataNode3 = dataNode2.appendChild(newNode)
     
     return (dom, dataNode3)
Example #39
0
    def __init__(self, size=(300, 300)):
        self.verbose = 0
        self.width, self.height = self.size = size
        # self.height = size[1]
        self.code = []
        self.style = {}
        self.path = ""
        self._strokeColor = (
            self._fillColor
        ) = self._lineWidth = self._font = self._fontSize = self._lineCap = self._lineJoin = self._color = None

        implementation = getDOMImplementation("minidom")
        self.doc = implementation.createDocument(None, "svg", None)
        self.svg = self.doc.documentElement
        self.svg.setAttribute("width", str(size[0]))
        self.svg.setAttribute("height", str(self.height))

        title = self.doc.createElement("title")
        text = self.doc.createTextNode("...")
        title.appendChild(text)
        self.svg.appendChild(title)

        desc = self.doc.createElement("desc")
        text = self.doc.createTextNode("...")
        desc.appendChild(text)
        self.svg.appendChild(desc)

        self.setFont(STATE_DEFAULTS["fontName"], STATE_DEFAULTS["fontSize"])
        self.setStrokeColor(STATE_DEFAULTS["strokeColor"])
        self.setLineCap(2)
        self.setLineJoin(0)
        self.setLineWidth(1)

        # Add a rectangular clipping path identical to view area.
        clipPath = transformNode(self.doc, "clipPath", id="clip")
        clipRect = transformNode(self.doc, "rect", x=0, y=0, width=self.width, height=self.height)
        clipPath.appendChild(clipRect)
        self.svg.appendChild(clipPath)

        self.groupTree = transformNode(
            self.doc,
            "g",
            id="group",
            transform="scale(1,-1) translate(0,-%d)" % self.height,
            style="clip-path: url(#clip)",
        )
        self.svg.appendChild(self.groupTree)
        self.currGroup = self.groupTree
 def end(self):
     from xml.dom import getDOMImplementation
     impl = getDOMImplementation()
     doc = impl.createDocument(None, 'html', None)
     el_html = doc.documentElement
     el_head = self.create_el(doc, 'head', el_html)
     el_title = self.create_el(doc, 'title', el_head).appendChild(doc.createTextNode('iPhone SMS'))
     el_style = self.create_el(doc, 'style', el_head, [('type', 'text/css')]).appendChild(doc.createTextNode(HTMLExporter.CSS))
     el_body = self.create_el(doc, 'body', el_html)
     el_div_header = self.create_el(doc, 'div', el_body, [('id', 'header')])
     el_h4_title = self.create_el(doc, 'h4', el_div_header).appendChild(doc.createTextNode('iPhone SMS'))
     el_div_content = self.create_el(doc, 'div', el_body, [('id', 'content')])
     
     for message in self.messages:
         self.create_message_div(doc, message, el_div_content)
     self.output.write(doc.toprettyxml(encoding = self.encoding))
Example #41
0
	def __init__(self,BasePath=".",Name="Unnamed",Version="Unknown",Type="XMLVolume",Mode='database'):
		
		self.SourceMatrix = dom.getDOMImplementation()
		self.DocType = self.SourceMatrix.createDocumentType('volume','http://localhost/xmlvolume.dtd','xmlvolume.dtd')
		self.Document = self.SourceMatrix.createDocument("xmlvolume.dtd/volume","volume",self.DocType)
		
		self.Name = Name
		self.Document.documentElement.setAttribute("name",self.Name)
		
		self.Version = Version
		self.Document.documentElement.setAttribute("version",self.Version)
		
		self.BasePath = BasePath
		self.Type = Type
		self.Mode = Mode
		self.Trunk=None
def initDoc(namespace):
    impl = getDOMImplementation()
    doc = impl.createDocument(namespace, "registryObjects", None)

    appendAttribute(doc, doc.documentElement, namespace, "xmlns", "http://ands.org.au/standards/rif-cs/registryObjects")
    appendAttribute(
        doc,
        doc.documentElement,
        namespace,
        "xsi:schemaLocation",
        "http://ands.org.au/standards/rif-cs/registryObjects http://services.ands.org.au/documentation/rifcs/schema/registryObjects.xsd",
    )
    appendAttribute(doc, doc.documentElement, namespace, "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance")
    appendAttribute(
        doc, doc.documentElement, namespace, "xmlns:rif", "http://ands.org.au/standards/rif-cs/registryObjects"
    )
    return doc
Example #43
0
    def test_sanitize_to_id_idempotent(self):
        def _verify(formatter, id):
            origid = formatter.sanitize_to_id(id)
            id = origid
            for i in xrange(3):
                id = formatter.sanitize_to_id(id)
                assert id == origid

        formatters = wikiutil.getPlugins("formatter", self.request.cfg)
        try:
            from xml.dom import getDOMImplementation
            dom = getDOMImplementation("4DOM")
        except ImportError:
            # if we don't have 4suite installed, the docbook formatter would just raise an exception
            formatters.remove('text_docbook')

        testids = [
            r"tho/zeequeen&angu\za",
            r"quuirahz\iphohsaij,i",
            r"ashuifa+it[ohchieque",
            r"ohyie-lakoo`duaghaib",
            r"eixaepumuqu[ie\ba|eh",
            r"theegieque;zahmeitie",
            r"pahcooje&rahkeiz$oez",
            r"ohjeeng*iequao%fai?p",
            r"ahfoodahmepooquepee;",
            r"ubed_aex;ohwebeixah%",
            r"eitiekicaejuelae=g^u",
            r"",
            r'  ',
            r'--123',
            r'__$$',
            r'@@',
            u'\xf6\xf6llasdf\xe4',
        ]

        for f_name in formatters:
            try:
                formatter = wikiutil.importPlugin(self.request.cfg,
                                                  "formatter", f_name,
                                                  "Formatter")
                f = formatter(self.request)
                for id in testids:
                    yield _verify, f, id
            except wikiutil.PluginAttributeError:
                pass
Example #44
0
    def get_records(self, url):
        """
        Returns the records listed in the webpage given as
        parameter as a xml String.

        @param url: the url of the Journal, Book, Protocol or Reference work
        """
        page = urllib2.urlopen(url)
        page = BeautifulSoup(page)
        links = page.body.findAll('p', attrs={'class': 'title'})
        links += page.body.findAll('h3', attrs={'class': 'title'})
        impl = getDOMImplementation()
        doc = impl.createDocument(None, "collection", None)
        for link in links:
            record = self._get_record(link)
            doc.firstChild.appendChild(record)
        return doc.toprettyxml()
Example #45
0
    def test_sanitize_to_id_idempotent(self):
        def _verify(formatter, id):
            origid = formatter.sanitize_to_id(id)
            id = origid
            for i in xrange(3):
                id = formatter.sanitize_to_id(id)
                assert id == origid

        formatters = wikiutil.getPlugins("formatter", self.request.cfg)
        try:
            from xml.dom import getDOMImplementation
            dom = getDOMImplementation("4DOM")
        except ImportError:
            # if we don't have 4suite installed, the docbook formatter would just raise an exception
            formatters.remove('text_docbook')

        testids = [
            r"tho/zeequeen&angu\za",
            r"quuirahz\iphohsaij,i",
            r"ashuifa+it[ohchieque",
            r"ohyie-lakoo`duaghaib",
            r"eixaepumuqu[ie\ba|eh",
            r"theegieque;zahmeitie",
            r"pahcooje&rahkeiz$oez",
            r"ohjeeng*iequao%fai?p",
            r"ahfoodahmepooquepee;",
            r"ubed_aex;ohwebeixah%",
            r"eitiekicaejuelae=g^u",
            r"",
            r'  ',
            r'--123',
            r'__$$',
            r'@@',
            u'\xf6\xf6llasdf\xe4',
        ]

        for f_name in formatters:
            try:
                formatter = wikiutil.importPlugin(self.request.cfg, "formatter",
                                                  f_name, "Formatter")
                f = formatter(self.request)
                for id in testids:
                    yield _verify, f, id
            except wikiutil.PluginAttributeError:
                pass
Example #46
0
 def testSyntaxReferenceDocBook(self):
     py.test.skip("docbook is broken")
     try:
         from xml.dom import getDOMImplementation
         dom = getDOMImplementation("4DOM")
     except ImportError:
         # if we don't have 4suite installed, the docbook formatter would just raise an exception
         py.test.skip("not testing docbook formatter because no 4suite installed")
     else:
         f_name = 'text_docbook'
         try:
             formatter = wikiutil.importPlugin(self.request.cfg, "formatter", f_name, "Formatter")
         except wikiutil.PluginAttributeError:
             pass
         else:
             print "Formatting using %r" % formatter
             self.formatPage("HelpOnMoinWikiSyntax", formatter)
             print "Done."
Example #47
0
def parse_ksp_ship(filelike, implied_node="CRAFT"):

    parse_stack = list()

    di = DOM.getDOMImplementation()
    document = new_ksp_document(di, implied_node)
    parse_stack.append(document.documentElement)

    my_iter = next_token_iterator(filelike)
    line_no = 0
    for t_type, match in my_iter:
        line_no += 1
        if t_type == LINE_ATTRIBUTE:
            name, value = match.groups()
            if name in multiple_allowed[parse_stack[-1].tagName]:
                an_element = document.createElement(name)
                a_text_node = document.createTextNode(value)
                an_element.appendChild(a_text_node)
                parse_stack[-1].appendChild(an_element)
            else:
                assert len(parse_stack) > 0, " no stack on line {}, {}".format(
                    line_no, document.toprettyxml())
                assert not parse_stack[-1].hasAttribute(
                    name), "name {} repeated line {}, context {}: ".format(
                        name, line_no, parse_stack[-1].tagName)
                parse_stack[-1].setAttribute(name, value)
        elif t_type == LINE_ELEMENT_TYPE:
            shouldbeopen, _ = my_iter.next()
            assert shouldbeopen == LINE_OPEN_BRAK
            line_no += 1
            if line_no == 2:  #NIX the implied element
                document = new_ksp_document(di, match.groups()[0])
                parse_stack = list()
                parse_stack.append(document.documentElement)
            else:
                an_element = document.createElement(match.groups()[0])
                parse_stack[-1].appendChild(an_element)
                parse_stack.append(an_element)
            #
        elif t_type == LINE_CLOSE_BRAK:
            #TODO: put a space or emtpy text node in if the element is childless.
            parse_stack.pop()

    return document
Example #48
0
    def toMathml(self, out=None, indent=False):
        """Convert this MathDOM into MathML and write it to file (or
        file-like object) out.  Pretty printing is activated by
        setting indent=True."""
        if out is None:
            out = sys.stdout

        root = self._document.lastChild
        if root and root.localName != u'math':
            dom = getDOMImplementation()
            document = dom.createDocument(MATHML_NAMESPACE_URI, u"math", None)
            document.lastChild.children[:] = [root]
        else:
            document = self._document

        if indent:
            PrettyPrint(document, out)
        else:
            Print(document, out)
Example #49
0
    def toMathml(self, out=None, indent=False):
        """Convert this MathDOM into MathML and write it to file (or
        file-like object) out.  Pretty printing is activated by
        setting indent=True."""
        if out is None:
            out = sys.stdout

        root = self._document.lastChild
        if root and root.localName != u'math':
            dom = getDOMImplementation()
            document = dom.createDocument(MATHML_NAMESPACE_URI, u"math", None)
            document.lastChild.children[:] = [root]
        else:
            document = self._document

        if indent:
            PrettyPrint(document, out)
        else:
            Print(document, out)
Example #50
0
def waypoints_to_gpx(sentences, name, description):
    """
    Create GPX doc with waypoints.
    
    :param sentences: iterable sequence of :class:`nmeatools.nmea_data.GPWPL` instances
    :param name: The string name to put in the metadata
    :param description: the string description to put in the metadata
    :returns: ``<gpx>`` element containing the ``<wpt>`` waypoints.
    """
    impl = getDOMImplementation()
    document = impl.createDocument(None, None, None)
    gpx = build_gpx(document, name, description)

    for s in sentences:
        logger.info(f"{s}")
        wpt = build_waypoint_location(document, s)
        gpx.appendChild(wpt)

    return document
Example #51
0
    def composeCIAXMLMessage(self):
        """ Composes the XML message to send

            (a commit message according to the `CIA schema`_\)

            .. _CIA schema: http://navi.cx/svn/misc/trunk/cia/xml/schema.xsd

            :return: The message
            :rtype: DOM object
        """
        from xml import dom
        message = dom.getDOMImplementation().createDocument(
            None, 'message', None
        )

        self._addTimeStamp(message)
        self._addGenerator(message)
        self._addSource(message)
        self._addBody(message)

        return message
Example #52
0
 def read_nlpp_file(self, filename):
     dom = getDOMImplementation()
     file = open (filename, "r")
     reader = Sax2.Reader()
     doc = reader.fromStream (file)
     file.close()
     headerList = xpath.Evaluate("pseudo/header", doc)
     if (headerList != []):
         header = headerList[0]
         elem = header.getAttribute("symbol")
         Z = header.getAttribute("atomic-number")
         charge = header.getAttribute("zval")
         self.Widgets[0].set_label(elem)
         self.Widgets[1].set_label(Z)
         self.Charge = int(float(charge))
         self.emit("changed")
         return True
     else:
         self.Widgets[0].set_label("Invalid PP")
         self.Widgets[1].set_label("-1")
         return False
Example #53
0
 def read_nlpp_file(self, filename):
     dom = getDOMImplementation()
     file = open (filename, "r")
     reader = Sax2.Reader()
     doc = reader.fromStream (file)
     file.close()
     headerList = xpath.Evaluate("pseudo/header", doc)
     if (headerList != []):
         header = headerList[0]
         elem = header.getAttribute("symbol")
         Z = header.getAttribute("atomic-number")
         charge = header.getAttribute("zval")
         self.Widgets[0].set_label(elem)
         self.Widgets[1].set_label(Z)
         self.Charge = int(float(charge))
         self.emit("changed")
         return True
     else:
         self.Widgets[0].set_label("Invalid PP")
         self.Widgets[1].set_label("-1")
         return False
Example #54
0
 def testSyntaxReferenceDocBook(self):
     py.test.skip("docbook is broken")
     try:
         from xml.dom import getDOMImplementation
         dom = getDOMImplementation("4DOM")
     except ImportError:
         # if we don't have 4suite installed, the docbook formatter would just raise an exception
         py.test.skip(
             "not testing docbook formatter because no 4suite installed")
     else:
         f_name = 'text_docbook'
         try:
             formatter = wikiutil.importPlugin(self.request.cfg,
                                               "formatter", f_name,
                                               "Formatter")
         except wikiutil.PluginAttributeError:
             pass
         else:
             print "Formatting using %r" % formatter
             self.formatPage("HelpOnMoinWikiSyntax", formatter)
             print "Done."
Example #55
0
	def __init__(self,BasePath=".",Name=None,Version=None,Type="XMLVolume",Populate=None):
		
		self.SourceMatrix = dom.getDOMImplementation()
		self.Document = self.SourceMatrix.createDocument(None,"volume",None)
		
		if Name:
			self.Name = Name
		else:
			self.Name = "Unnamed"
		self.Document.documentElement.setAttribute("name",self.Name)
		if Version:
			self.Version = Version
		else:
			self.Version = "Unknown"
		self.Document.documentElement.setAttribute("version",self.Version)
		
		self.BasePath = BasePath
		self.Type = Type
		self.Trunk=None
		
		if Populate:
			self.addToTree(Populate)
Example #56
0
def numbers_feed(n: int) -> str:
    '''
    Generates a RSS feed containing first *n* fibonacci numbers.
    '''
    doc = getDOMImplementation().createDocument(None, 'rss', None)
    root = doc.documentElement
    root.setAttribute('version', '2.0')

    channel = doc.createElement('channel')
    root.appendChild(channel)

    title = doc.createElement('title')
    channel.appendChild(title)
    title.appendChild(doc.createTextNode(f'{n} numbers'))

    od = datetime.datetime.now() - datetime.timedelta(minutes=n)

    for (k, a) in reversed(list(numbers(n))):
        item = doc.createElement('item')
        channel.appendChild(item)

        item_title = doc.createElement('title')
        item.appendChild(item_title)
        item_title.appendChild(doc.createTextNode(f'{a}'))

        item_guid = doc.createElement('guid')
        item.appendChild(item_guid)
        item_guid.setAttribute('isPermaLink', 'true')
        item_guid.appendChild(
            doc.createTextNode(f'https://en.wikipedia.org/wiki/{a}'))

        d = od + datetime.timedelta(minutes=k)
        item_pubdate = doc.createElement('pubDate')
        item.appendChild(item_pubdate)
        item_pubdate.appendChild(
            doc.createTextNode(d.strftime('%a, %d %b %Y %H:%M:%S %z')))

    return doc.toprettyxml(indent=' ' * 4)
Example #57
0
def export_kopete(pack, target_file):
    log.debug("export to kopete started...%s", target_file)
    pack_document = getDOMImplementation(config.dom_impl).createDocument(None, "icondef", None)
    meta_element = pack_document.createElement("meta")
    if pack.name:
        name_element = pack_document.createElement("name")
        name_element.appendChild(pack_document.createTextNode(pack.name))
        meta_element.appendChild(name_element)
    pack_document.documentElement.appendChild(meta_element)
    for icon in pack.icons:
        icon_element = pack_document.createElement("icon")
        image_element = pack_document.createElement("object")
        image_element.setAttribute("mime", "image/gif")
        icon_element.appendChild(image_element)
        image_text = pack_document.createTextNode(icon.image)
        image_element.appendChild(image_text)
        for text in icon.text:
            text_element = pack_document.createElement("text")
            icon_element.appendChild(text_element)
            text_text = pack_document.createTextNode(text)
            text_element.appendChild(text_text)
        pack_document.documentElement.appendChild(icon_element)
    content = ""
    try:
        import cStringIO as StringIO
        stream=StringIO.StringIO()
        from xml.dom.ext import PrettyPrint
        PrettyPrint(pack_document, stream)
        content = stream.getvalue()
    except ImportError:
        content = pack_document.toxml()
    zip_file = ZipFile(target_file, "w")
    zip_file.writestr(os.path.join(pack.name, "icondef.xml"), content)
    for icon in pack.icons:
        zip_file.write(os.path.join(config.temp_dir, icon.image), os.path.join(pack.name, icon.image))
    zip_file.close()
    log.debug("export to kopete finished")
Example #58
0
    def _write_props(self, fh):
        impl = getDOMImplementation()
        doc = impl.createDocument(MSBUILD_NAMESPACE, 'Project', None)

        project = doc.documentElement
        project.setAttribute('xmlns', MSBUILD_NAMESPACE)
        project.setAttribute('ToolsVersion', '4.0')

        ig = project.appendChild(doc.createElement('ImportGroup'))
        ig.setAttribute('Label', 'PropertySheets')

        pg = project.appendChild(doc.createElement('PropertyGroup'))
        pg.setAttribute('Label', 'UserMacros')

        ig = project.appendChild(doc.createElement('ItemGroup'))

        def add_var(k, v):
            e = pg.appendChild(doc.createElement(k))
            e.appendChild(doc.createTextNode(v))

            e = ig.appendChild(doc.createElement('BuildMacro'))
            e.setAttribute('Include', k)

            e = e.appendChild(doc.createElement('Value'))
            e.appendChild(doc.createTextNode('$(%s)' % k))

        add_var('TopObjDir', os.path.normpath(self.environment.topobjdir))
        add_var('TopSrcDir', os.path.normpath(self.environment.topsrcdir))
        add_var('PYTHON', '$(TopObjDir)\\_virtualenv\\Scripts\\python.exe')
        add_var('MACH', '$(TopSrcDir)\\mach')

        # From MozillaBuild.
        add_var('DefaultIncludes', os.environ.get('INCLUDE', ''))

        fh.write(b'\xef\xbb\xbf')
        doc.writexml(fh, addindent='  ', newl='\r\n')
Example #59
0
    def _write_props(self, fh):
        impl = getDOMImplementation()
        doc = impl.createDocument(MSBUILD_NAMESPACE, "Project", None)

        project = doc.documentElement
        project.setAttribute("xmlns", MSBUILD_NAMESPACE)
        project.setAttribute("ToolsVersion", "4.0")

        ig = project.appendChild(doc.createElement("ImportGroup"))
        ig.setAttribute("Label", "PropertySheets")

        pg = project.appendChild(doc.createElement("PropertyGroup"))
        pg.setAttribute("Label", "UserMacros")

        ig = project.appendChild(doc.createElement("ItemGroup"))

        def add_var(k, v):
            e = pg.appendChild(doc.createElement(k))
            e.appendChild(doc.createTextNode(v))

            e = ig.appendChild(doc.createElement("BuildMacro"))
            e.setAttribute("Include", k)

            e = e.appendChild(doc.createElement("Value"))
            e.appendChild(doc.createTextNode("$(%s)" % k))

        add_var("TopObjDir", os.path.normpath(self.environment.topobjdir))
        add_var("TopSrcDir", os.path.normpath(self.environment.topsrcdir))
        add_var("PYTHON", "$(TopObjDir)\\_virtualenv\\Scripts\\python.exe")
        add_var("MACH", "$(TopSrcDir)\\mach")

        # From MozillaBuild.
        add_var("DefaultIncludes", os.environ.get("INCLUDE", ""))

        fh.write(b"\xef\xbb\xbf")
        doc.writexml(fh, addindent="  ", newl="\r\n")