B dQF@sddlmZddlmZmZGdddZGdddeZGdddZGd d d ZGd d d Z Gd dde Z ddZ e dkre dS))handler)SAXNotSupportedExceptionSAXNotRecognizedExceptionc@seZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZddZddZddZdS) XMLReadercCs,t|_t|_t|_t|_dS)N) rZContentHandler _cont_handlerZ DTDHandler _dtd_handlerZEntityResolver _ent_handlerZ ErrorHandler _err_handler)selfr 4/opt/alt/python37/lib/python3.7/xml/sax/xmlreader.py__init__s   zXMLReader.__init__cCs tddS)Nz This method must be implemented!)NotImplementedError)r sourcer r r parseszXMLReader.parsecCs|jS)N)r)r r r r getContentHandler"szXMLReader.getContentHandlercCs ||_dS)N)r)r rr r r setContentHandler&szXMLReader.setContentHandlercCs|jS)N)r)r r r r getDTDHandler*szXMLReader.getDTDHandlercCs ||_dS)N)r)r rr r r setDTDHandler.szXMLReader.setDTDHandlercCs|jS)N)r)r r r r getEntityResolver2szXMLReader.getEntityResolvercCs ||_dS)N)r)r Zresolverr r r setEntityResolver6szXMLReader.setEntityResolvercCs|jS)N)r )r r r r getErrorHandler:szXMLReader.getErrorHandlercCs ||_dS)N)r )r rr r r setErrorHandler>szXMLReader.setErrorHandlercCs tddS)NzLocale support not implemented)r)r localer r r setLocaleBszXMLReader.setLocalecCstd|dS)NzFeature '%s' not recognized)r)r namer r r getFeatureKszXMLReader.getFeaturecCstd|dS)NzFeature '%s' not recognized)r)r rstater r r setFeatureOszXMLReader.setFeaturecCstd|dS)NzProperty '%s' not recognized)r)r rr r r getPropertySszXMLReader.getPropertycCstd|dS)NzProperty '%s' not recognized)r)r rvaluer r r setPropertyWszXMLReader.setPropertyN)__name__ __module__ __qualname__r rrrrrrrrrrrrrr!r r r r r s  rc@s>eZdZdddZddZddZdd Zd d Zd d ZdS)IncrementalParsercCs||_t|dS)N)_bufsizerr )r bufsizer r r r oszIncrementalParser.__init__cCspddlm}||}|||}|dkr8|}||j}x|rb||||j}qFW| dS)Nr)saxutils) r)Zprepare_input_source prepareParsergetCharacterStream getByteStreamreadr'feedclose)r rr)filebufferr r r rss     zIncrementalParser.parsecCs tddS)Nz This method must be implemented!)r)r datar r r r/szIncrementalParser.feedcCs tddS)Nz!prepareParser must be overridden!)r)r rr r r r+szIncrementalParser.prepareParsercCs tddS)Nz This method must be implemented!)r)r r r r r0s zIncrementalParser.closecCs tddS)Nz This method must be implemented!)r)r r r r resetszIncrementalParser.resetN)r&) r"r#r$r rr/r+r0r4r r r r r%[s    r%c@s,eZdZddZddZddZddZd S) LocatorcCsdS)Nr )r r r r getColumnNumberszLocator.getColumnNumbercCsdS)Nr6r )r r r r getLineNumberszLocator.getLineNumbercCsdS)Nr )r r r r getPublicIdszLocator.getPublicIdcCsdS)Nr )r r r r getSystemIdszLocator.getSystemIdN)r"r#r$r7r8r9r:r r r r r5sr5c@sfeZdZdddZddZddZdd Zd d Zd d ZddZ ddZ ddZ ddZ ddZ dS) InputSourceNcCs"||_d|_d|_d|_d|_dS)N)_InputSource__system_id_InputSource__public_id_InputSource__encoding_InputSource__bytefile_InputSource__charfile)r system_idr r r r s zInputSource.__init__cCs ||_dS)N)r=)r Z public_idr r r setPublicIdszInputSource.setPublicIdcCs|jS)N)r=)r r r r r9szInputSource.getPublicIdcCs ||_dS)N)r<)r rAr r r setSystemIdszInputSource.setSystemIdcCs|jS)N)r<)r r r r r:szInputSource.getSystemIdcCs ||_dS)N)r>)r encodingr r r setEncodingszInputSource.setEncodingcCs|jS)N)r>)r r r r getEncodingszInputSource.getEncodingcCs ||_dS)N)r?)r Zbytefiler r r setByteStreams zInputSource.setByteStreamcCs|jS)N)r?)r r r r r-szInputSource.getByteStreamcCs ||_dS)N)r@)r Zcharfiler r r setCharacterStreamszInputSource.setCharacterStreamcCs|jS)N)r@)r r r r r,szInputSource.getCharacterStream)N)r"r#r$r rBr9rCr:rErFrGr-rHr,r r r r r;s    r;c@seZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZddZd$ddZddZd d!Zd"d#ZdS)%AttributesImplcCs ||_dS)N)_attrs)r attrsr r r r szAttributesImpl.__init__cCs t|jS)N)lenrJ)r r r r getLengthszAttributesImpl.getLengthcCsdS)NZCDATAr )r rr r r getType!szAttributesImpl.getTypecCs |j|S)N)rJ)r rr r r getValue$szAttributesImpl.getValuecCs |j|S)N)rJ)r rr r r getValueByQName'szAttributesImpl.getValueByQNamecCs||jkrt||S)N)rJKeyError)r rr r r getNameByQName*s zAttributesImpl.getNameByQNamecCs||jkrt||S)N)rJrQ)r rr r r getQNameByName/s zAttributesImpl.getQNameByNamecCst|jS)N)listrJkeys)r r r r getNames4szAttributesImpl.getNamescCst|jS)N)rTrJrU)r r r r getQNames7szAttributesImpl.getQNamescCs t|jS)N)rLrJ)r r r r __len__:szAttributesImpl.__len__cCs |j|S)N)rJ)r rr r r __getitem__=szAttributesImpl.__getitem__cCst|jS)N)rTrJrU)r r r r rU@szAttributesImpl.keyscCs ||jkS)N)rJ)r rr r r __contains__CszAttributesImpl.__contains__NcCs|j||S)N)rJget)r rZ alternativer r r r[FszAttributesImpl.getcCs ||jS)N) __class__rJ)r r r r copyIszAttributesImpl.copycCst|jS)N)rTrJitems)r r r r r^LszAttributesImpl.itemscCst|jS)N)rTrJvalues)r r r r r_OszAttributesImpl.values)N)r"r#r$r rMrNrOrPrRrSrVrWrXrYrUrZr[r]r^r_r r r r rIs" rIc@s<eZdZddZddZddZddZd d Zd d Zd S)AttributesNSImplcCs||_||_dS)N)rJ_qnames)r rKZqnamesr r r r VszAttributesNSImpl.__init__cCs6x(|jD]\}}||kr |j|Sq Wt|dS)N)rar^rJrQ)r rnsnameqnamer r r rP^sz AttributesNSImpl.getValueByQNamecCs0x"|jD]\}}||kr |Sq Wt|dS)N)rar^rQ)r rrbrcr r r rReszAttributesNSImpl.getNameByQNamecCs |j|S)N)ra)r rr r r rSlszAttributesNSImpl.getQNameByNamecCst|jS)N)rTrar_)r r r r rWoszAttributesNSImpl.getQNamescCs||j|jS)N)r\rJra)r r r r r]rszAttributesNSImpl.copyN) r"r#r$r rPrRrSrWr]r r r r r`Ts r`cCstttdS)N)rr%r5r r r r _testvsrd__main__N) r*r _exceptionsrrrr%r5r;rIr`rdr"r r r r s PJY>"