void MUCUserPayloadParser::handleStartElement(const std::string& element, const std::string&, const AttributeMap& attributes) { if (level == ItemLevel) { if (element == "item") { MUCUserPayload::Item item; std::string affiliation = attributes.getAttribute("affiliation"); std::string role = attributes.getAttribute("role"); std::string nick = attributes.getAttribute("nick"); std::string jid = attributes.getAttribute("jid"); item.affiliation = parseAffiliation(affiliation); item.role = parseRole(role); if (!jid.empty()) { item.realJID = JID(jid); } if (!nick.empty()) { item.nick = nick; } getPayloadInternal()->addItem(item); } else if (element == "status") { MUCUserPayload::StatusCode status; try { status.code = boost::lexical_cast<int>(attributes.getAttribute("code").c_str()); getPayloadInternal()->addStatusCode(status); } catch (boost::bad_lexical_cast&) { } } } ++level; }
int main( int argc, char **argv ) { if( checkPrivileges( argc, argv ) == false ) { return 0; } VeyonCore::setupApplicationParameters(); QApplication app( argc, argv ); VeyonCore core( &app, "Configurator" ); ConfiguratorCore::silent = app.arguments().contains( "-quiet" ) || app.arguments().contains( "-silent" ) || app.arguments().contains( "-q" ); if( checkWritableConfiguration() == false ) { return -1; } // parse arguments QStringListIterator argIt( app.arguments() ); argIt.next(); while( argc > 1 && argIt.hasNext() ) { const QString a = argIt.next().toLower(); if( a == "-role" ) { if( parseRole( argIt ) == false ) { return -1; } } else if( a == "-createkeypair" ) { return createKeyPair( argIt ); } else if( a == "-importpublickey" || a == "-i" ) { return importPublicKey( argIt ); } else if( a == "-test" ) { return ConfigurationTestController( app.arguments().mid( 2 ) ).run(); } } // now create the main window auto mainWindow = new MainWindow; mainWindow->show(); ilog( Info, "App.Exec" ); return app.exec(); }