/*! Parse the contents of \a input and convert it into regular XML text. */ QString QWbXmlReader::toXml( QIODevice& input ) { QXmlContentHandler *oldHandler = contentHandler(); QWbXmlToXmlContentHandler handler; setContentHandler( &handler ); parse( input ); setContentHandler( oldHandler ); return handler.toString(); }
/*! Parse the contents of \a input and convert it into regular XML text. */ QString QWbXmlReader::toXml( const QByteArray& input ) { QXmlContentHandler *oldHandler = contentHandler(); QWbXmlToXmlContentHandler handler; setContentHandler( &handler ); parse( input ); setContentHandler( oldHandler ); return handler.toString(); }
/*! Parse a WBXML-encoded OTA \a input message and return a characteristics list that describes its contents. */ QOtaCharacteristicList *QOtaReader::parseCharacteristics( QIODevice& input ) { QXmlContentHandler *oldHandler = contentHandler(); QOtaContentHandler handler; setContentHandler( &handler ); bool result = parse( input ); setContentHandler( oldHandler ); if ( result ) return handler.list(); else return 0; }
bool ParserStatus::parse(const QXmlInputSource * input) { if (! contentHandler()) return false; Q_ASSERT_X(input != 0, "ParserStatus::parse", "input source is undefined"); if (! input) return false; QTime timer; timer.start(); // m_source = (QXmlInputSource *) input; contentHandler()->setDocumentLocator(m_locator); contentHandler()->startDocument(); m_currState = m_stateMachine->startState(); bool result = loop(); contentHandler()->endDocument(); kDebug(24000) << "Parsing time: " << timer.elapsed() << " ms"; return result; }
void QtActionManager::loadActionData( QIODevice & source ) { QXmlSimpleReader actions; QtActionContentHandler contentHandler( *this ); actions.setContentHandler( &contentHandler ); QtActionErrorHandler errorHandler; actions.setErrorHandler( &errorHandler ); const auto result = actions.parse( QXmlInputSource( &source ) ); if (!result) { NGT_ERROR_MSG( "Failed to parse actions\n" ); } }
//---------------------------------------------------------------------------------------- // ParseAdXMLFile //---------------------------------------------------------------------------------------- bool ZMAdFileFacade::ParseAdXMLFile( const PMString & path, ZMstAdSList & oAdsList, uint32 * oLastUpdateDate) const { if (oLastUpdateDate) *oLastUpdateDate = 0; bool result = false; SDKFileHelper fileHelper(path); IDFile fileId = fileHelper.GetIDFile(); InterfacePtr<IPMStream> fileStream((IPMStream*)StreamUtil::CreateFileStreamRead(fileId)); if (! fileStream) return result; //Set last update date if (oLastUpdateDate) FileUtils::GetModificationDate(fileId, oLastUpdateDate); InterfacePtr<IK2ServiceRegistry> serviceRegistry(gSession, UseDefaultIID()); InterfacePtr<IK2ServiceProvider> xmlProvider(serviceRegistry->QueryServiceProviderByClassID(kXMLParserService, kXMLParserServiceBoss)); InterfacePtr<ISAXServices> saxServices(xmlProvider, UseDefaultIID()); InterfacePtr<ISAXContentHandler> contentHandler(static_cast<ISAXContentHandler*>(::CreateObject(kZMSAXAdContentHandlerBoss, ISAXContentHandler::kDefaultIID))); InterfacePtr<ISAXEntityResolver> entityResolver(static_cast<ISAXEntityResolver*>(::CreateObject(kXMLEmptyEntityResolverBoss, ISAXEntityResolver::kDefaultIID))); if (Utils<IShowAlertRegistryUtils>()) { Utils<IShowAlertRegistryUtils>()->DoSetShouldShowCmd(kXMLEntityNotResolved, kFalse); Utils<IShowAlertRegistryUtils>()->DoSetShouldShowCmd(kXMLPublicIDsNotSupported, kFalse); } // set parser options InterfacePtr<ISAXParserOptions> parserOptions(saxServices, UseDefaultIID()); parserOptions->SetNamespacesFeature(kTrue); parserOptions->SetNamespacePrefixesFeature(kTrue); parserOptions->SetWarnCaseXMLDECLFeature(kFalse); parserOptions->SetWarnCaseDTDFeature(kFalse); parserOptions->SetValidationFeature(kFalse); saxServices->ParseStream(fileStream, contentHandler, entityResolver); ErrorCode err = ErrorUtils::PMGetGlobalErrorCode(); if (err == kIZMInvalidXMLFileError) //if (err == kFailure || err == kIZMInvalidXMLFileError) { PMString errStr(kIZMediaInvalidXMLFileErrorCodeStringKey); ErrorUtils::PMSetGlobalErrorCode(kSuccess); CAlert::ErrorAlert(errStr); //ErrorUtils::PMSetGlobalErrorCode(kFailure, &errStr); //ErrorUtils::PMSetGlobalErrorCode(kFailure, &errStr); //InterfacePtr<IXMLServicesError> serviceErr (saxServices, UseDefaultIID()); //err = serviceErr->GetErrorCode (); //if (err == kIZMInvalidXMLFileError) // int x =0; //PMString errStr("XML Error"); } if (!err) { InterfacePtr<const IZMAdFileData> zmAdList(contentHandler, IZMAdFileData::kDefaultIID); if (zmAdList) { const ZMstAdSList & adsList= zmAdList->GetAdsList(); oAdsList.Copy(adsList, true); //This will take ownership of objects in adsList result = true; //Testing code for checking values. //ZMstAdSListCIter iter = adsList.begin(); //ZMstAdSListCIter iterEnd = adsList.end(); //for (; iter != iterEnd; ++iter) //{ // const stAd & ad = **iter; // PMString customer = ad.mCustomer; //} } } return result; }