- xmlBucket = fetchResult.asBucket();
- xmlInputStream = xmlBucket.getInputStream();
- Document document = XML.transformToDocument(xmlInputStream);
- SimpleXML soneXml;
- try {
- soneXml = SimpleXML.fromDocument(document);
- } catch (NullPointerException npe1) {
- /* for some reason, invalid XML can cause NPEs. */
- logger.log(Level.WARNING, "XML for Sone " + sone + " can not be parsed!", npe1);
- return;
- }
-
- /* check ID. */
- String soneId = soneXml.getValue("id", null);
- if (!sone.getId().equals(soneId)) {
- /* TODO - mark Sone as bad. */
- logger.log(Level.WARNING, "Downloaded ID for Sone %s (%s) does not match known ID (%s)!", new Object[] { sone, sone.getId(), soneId });
- return;
- }
-
- String soneName = soneXml.getValue("name", null);
- if (soneName == null) {
- /* TODO - mark Sone as bad. */
- logger.log(Level.WARNING, "Downloaded name for Sone %s was null!", new Object[] { sone });
- return;
- }
-
- SimpleXML profileXml = soneXml.getNode("profile");
- if (profileXml == null) {