U e5ds0ã@s¢ddlZddlZddlZddlmZdddgZGdd„dƒZGdd„dƒZd d „Z Gd d„de ƒZ Gd d„de ƒZ Gd d„dƒZ [Gdd„dƒZGdd„dƒZdS)éN)Ú NodeFilterÚ DOMBuilderÚDOMEntityResolverÚDOMInputSourcec@sXeZdZdZdZdZdZdZdZdZ dZ dZ dZ dZ dZdZdZdZdZdZdZdZdS)ÚOptionséTFN)Ú__name__Ú __module__Ú __qualname__Ú namespacesÚnamespace_declarationsÚ validationÚexternal_parameter_entitiesÚexternal_general_entitiesZexternal_dtd_subsetÚvalidate_if_schemaZvalidateÚdatatype_normalizationÚcreate_entity_ref_nodesÚentitiesÚwhitespace_in_element_contentÚcdata_sectionsÚcommentsÚcharset_overrides_xml_encodingÚinfosetÚsupported_mediatypes_onlyÚ errorHandlerÚfilter©rrú*/usr/lib64/python3.8/xml/dom/xmlbuilder.pyr s& rc@s&eZdZdZdZdZdZdZdZdZ eeee fZ dd„Z dd „Z d d „Z d d „Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdgdgdgdgdgdgd gd!gd"gd#gd"d$gd%gd&gd'gd(gd)gd*gd+gd,gd-ggdd!d"d$d(d.d'd+d-g d/gd0gd1gd2œZd3d4„Zd5d6„Zd7d8„Zd9d:„Zd;d<„ZdS)=rNrééécCs tƒ|_dS©N)rÚ_options©ÚselfrrrÚ__init__:szDOMBuilder.__init__cCs|jSr!©ÚentityResolverr#rrrÚ_get_entityResolver=szDOMBuilder._get_entityResolvercCs ||_dSr!r&)r$r'rrrÚ_set_entityResolver?szDOMBuilder._set_entityResolvercCs|jSr!©rr#rrrÚ_get_errorHandlerBszDOMBuilder._get_errorHandlercCs ||_dSr!r*)r$rrrrÚ_set_errorHandlerDszDOMBuilder._set_errorHandlercCs|jSr!©rr#rrrÚ _get_filterGszDOMBuilder._get_filtercCs ||_dSr!r-)r$rrrrÚ _set_filterIszDOMBuilder._set_filtercCsŒ| |¡rt|rdpd}z|jt|ƒ|f}Wn(tk rTtj d|f¡d‚YqˆX|D]\}}t|j||ƒqZntj  dt |ƒ¡‚dS)Nrrzunsupported feature: %rzunknown feature: ) ÚsupportsFeatureÚ _settingsÚ _name_xformÚKeyErrorÚxmlÚdomÚNotSupportedErrÚsetattrr"Ú NotFoundErrÚrepr)r$ÚnameÚstateZsettingsÚvaluerrrÚ setFeatureLs  ÿÿ zDOMBuilder.setFeaturecCst|jt|ƒƒSr!)Úhasattrr"r2)r$r:rrrr0ZszDOMBuilder.supportsFeaturecCst|ƒ|rdpdf}||jkS)Nrr)r2r1)r$r:r;ÚkeyrrrÚ canSetFeature]szDOMBuilder.canSetFeature©r r©r r©r r©rr©rr©rr©rr©rr©rr©rr©rr©rr©rr©rr©rr©rr©rr©rr©rr©rr)rr©rr©r r©r r)rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRrSrT)rr)rrrUrVrWcCsŽt|ƒ}zt|j|ƒWStk rˆ|dkrp|j}|joj|joj|joj|joj|jph|j ph|j ph|j ph|j YSt j dt|ƒ¡‚YnXdS)Nrzfeature %s not known)r2Úgetattrr"ÚAttributeErrorrrrrr rrrrr4r5r8r9)r$r:ZxnameÚoptionsrrrÚ getFeature£s0ÿþýÿþýüü zDOMBuilder.getFeaturecCs.|jr|j d|¡}ntƒ d|¡}| |¡Sr!)r'Ú resolveEntityrÚparse)r$ÚuriÚinputrrrÚparseURIµszDOMBuilder.parseURIcCsRt |j¡}|j|_|j|_|j}|dkrF|jrFddl}|j |j¡}|  ||¡S©Nr) Úcopyr"rrÚ byteStreamÚsystemIdÚurllib.requestÚrequestZurlopenÚ_parse_bytestream)r$r_rZÚfpÚurllibrrrr]¼s zDOMBuilder.parsecCs||jkrtdƒ‚tdƒ‚dS)Nznot a legal actionzHaven't written this yet...)Ú_legal_actionsÚ ValueErrorÚNotImplementedError)r$r_ZcnodeÚactionrrrÚparseWithContextÆs zDOMBuilder.parseWithContextcCs ddl}|jj |¡}| |¡Sra)Zxml.dom.expatbuilderr5Z expatbuilderZ makeBuilderZ parseFile)r$ÚstreamrZr4ZbuilderrrrrgËszDOMBuilder._parse_bytestream)rr r r'rrZACTION_REPLACEZACTION_APPEND_AS_CHILDRENZACTION_INSERT_AFTERZACTION_INSERT_BEFORErjr%r(r)r+r,r.r/r=r0r@r1r[r`r]rnrgrrrrr-sªÿ ÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿ÷ ÿÿÿÇ= cCs| ¡ dd¡S)Nú-Ú_)ÚlowerÚreplace)r:rrrr2Ñsr2c@s0eZdZdZdd„Zdd„Zdd„Zdd „Zd S) r)Ú_openerc Cs˜tƒ}||_||_| ¡ |¡|_| |¡|_ddl}ddl }|j   |¡}|\}}} } } } | r”|   d¡s”|  | ¡d} ||| | | | f}|j  |¡|_|S)Nrú/)rÚpublicIdrdÚ _get_openerÚopenrcÚ_guess_media_encodingÚencodingÚ posixpathZ urllib.parser]ZurlparseÚendswithÚdirnameZ urlunparseÚbaseURI) r$rvrdÚsourcer{riÚpartsZschemeZnetlocÚpathZparamsZqueryZfragmentrrrr\Øs  zDOMEntityResolver.resolveEntitycCs2z|jWStk r,| ¡|_|jYSXdSr!)rtrYÚ_create_openerr#rrrrwîs  zDOMEntityResolver._get_openercCsddl}|j ¡Sra)rerfZ build_opener)r$rirrrr‚õsz DOMEntityResolver._create_openercCsF|j ¡}d|krB| ¡D]&}| d¡r| dd¡d ¡SqdS)Nz Content-Typezcharset=ú=r)rcÚinfoZgetplistÚ startswithÚsplitrr)r$rr„Zparamrrrryùs    z'DOMEntityResolver._guess_media_encodingN)rr r Ú __slots__r\rwr‚ryrrrrrÕs c@sˆeZdZdZdd„Zdd„Zdd„Zdd „Zd d „Zd d „Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zd S)!r©rcÚcharacterStreamÚ stringDatarzrvrdr~cCs.d|_d|_d|_d|_d|_d|_d|_dSr!rˆr#rrrr%szDOMInputSource.__init__cCs|jSr!©rcr#rrrÚ_get_byteStreamszDOMInputSource._get_byteStreamcCs ||_dSr!r‹)r$rcrrrÚ_set_byteStreamszDOMInputSource._set_byteStreamcCs|jSr!©r‰r#rrrÚ_get_characterStreamsz#DOMInputSource._get_characterStreamcCs ||_dSr!rŽ)r$r‰rrrÚ_set_characterStreamsz#DOMInputSource._set_characterStreamcCs|jSr!©rŠr#rrrÚ_get_stringDataszDOMInputSource._get_stringDatacCs ||_dSr!r‘)r$ÚdatarrrÚ_set_stringDataszDOMInputSource._set_stringDatacCs|jSr!©rzr#rrrÚ _get_encodingszDOMInputSource._get_encodingcCs ||_dSr!r•)r$rzrrrÚ _set_encodingszDOMInputSource._set_encodingcCs|jSr!©rvr#rrrÚ _get_publicId"szDOMInputSource._get_publicIdcCs ||_dSr!r˜)r$rvrrrÚ _set_publicId$szDOMInputSource._set_publicIdcCs|jSr!©rdr#rrrÚ _get_systemId'szDOMInputSource._get_systemIdcCs ||_dSr!r›)r$rdrrrÚ _set_systemId)szDOMInputSource._set_systemIdcCs|jSr!©r~r#rrrÚ _get_baseURI,szDOMInputSource._get_baseURIcCs ||_dSr!rž©r$r^rrrÚ _set_baseURI.szDOMInputSource._set_baseURIN)rr r r‡r%rŒr�r�r�r’r”r–r—r™ršrœr�rŸr¡rrrrrs  c@s:eZdZdZdZdZdZejZ dd„Z dd„Z d d „Z d S) ÚDOMBuilderFilterrrrr cCs|jSr!)Ú whatToShowr#rrrÚ_get_whatToShowCsz DOMBuilderFilter._get_whatToShowcCs|jSr!©Ú FILTER_ACCEPT©r$ZelementrrrÚ acceptNodeFszDOMBuilderFilter.acceptNodecCs|jSr!r¥r§rrrÚstartContainerIszDOMBuilderFilter.startContainerN) rr r r¦Z FILTER_REJECTZ FILTER_SKIPZFILTER_INTERRUPTrZSHOW_ALLr£r¤r¨r©rrrrr¢2s r¢c@s@eZdZdZdd„Zdd„Zdd„Zdd „Zd d „Zd d „Z dS)Ú DocumentLSFcCsdS)NFrr#rrrÚ _get_asyncTszDocumentLS._get_asynccCs|rtj d¡‚dS)Nz.asynchronous document loading is not supported)r4r5r6)r$ÚflagrrrÚ _set_asyncWsÿzDocumentLS._set_asynccCs tdƒ‚dS)Nz'haven't figured out what this means yet©rlr#rrrÚabort\sÿzDocumentLS.abortcCs tdƒ‚dS©Nzhaven't written this yetr®r rrrÚloadbszDocumentLS.loadcCs tdƒ‚dSr°r®)r$rrrrÚloadXMLeszDocumentLS.loadXMLcCs*|dkr|}n|j|k r"tj ¡‚| ¡Sr!)Z ownerDocumentr4r5ZWrongDocumentErrZtoxml)r$ZsnoderrrÚsaveXMLhs   zDocumentLS.saveXMLN) rr r Zasync_r«r­r¯r±r²r³rrrrrªOsrªc@s,eZdZdZdZdd„Zdd„Zdd„Zd S) ÚDOMImplementationLSrrcCsF|dk rtj d¡‚||jkr$tƒS||jkr:tj d¡‚tdƒ‚dS)NzschemaType not yet supportedz'asynchronous builders are not supportedzunknown value for mode)r4r5r6ÚMODE_SYNCHRONOUSrÚMODE_ASYNCHRONOUSrk)r$ÚmodeZ schemaTyperrrÚcreateDOMBuildertsÿ  ÿz$DOMImplementationLS.createDOMBuildercCs tdƒ‚dS)Nz-the writer interface hasn't been written yet!r®r#rrrÚcreateDOMWritersÿz#DOMImplementationLS.createDOMWritercCstƒSr!)rr#rrrÚcreateDOMInputSourceƒsz(DOMImplementationLS.createDOMInputSourceN)rr r rµr¶r¸r¹rºrrrrr´ps  r´)rbÚwarningsZxml.domr4Zxml.dom.NodeFilterrÚ__all__rrr2Úobjectrrr¢rªr´rrrrÚs   %,1!