while (!xml.atEnd()) { xml.readNext(); if (xml.isStartElement()) { if (xml.name() == QLatin1String("id")) { buildservice.setId(xml.readElementText()); } else if (xml.name() == QLatin1String("name")) { buildservice.setName(xml.readElementText()); } else if (xml.name() == QLatin1String("registrationurl")) { buildservice.setUrl(xml.readElementText()); } else if (xml.name() == QLatin1String("supportedtargets")) { while (!xml.atEnd()) { xml.readNextStartElement(); if (xml.isStartElement()) { if (xml.name() == QLatin1String("target")) { Target t; while (!xml.atEnd()) { xml.readNextStartElement(); if (xml.isStartElement()) { if (xml.name() == QLatin1String("id")) { t.id = xml.readElementText(); } else if (xml.name() == QLatin1String("name")) { t.name = xml.readElementText(); } } else if (xml.isEndElement() && (xml.name() == QLatin1String("target"))) { xml.readNext(); break; } } buildservice.addTarget(t); } } else if (xml.isEndElement() && (xml.name() == QLatin1String("supportedtargets"))) { xml.readNext(); break; } } } } else if (xml.isEndElement() && ((xml.name() == QLatin1String("buildservice")) || (xml.name() == QLatin1String("user")))) { break; } }