X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FSoneDownloader.java;h=b085ade983b5ea13c96aab1309092a2191d03d03;hb=f2a93c6c489570578a564fa3f4fa262d21b171a2;hp=1caf186b596335c1cb675abbff93bb1e7b209fc0;hpb=c6ff4ddc7eee9a2db14b2dcdfc76ec61c11bdb25;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/core/SoneDownloader.java b/src/main/java/net/pterodactylus/sone/core/SoneDownloader.java index 1caf186..b085ade 100644 --- a/src/main/java/net/pterodactylus/sone/core/SoneDownloader.java +++ b/src/main/java/net/pterodactylus/sone/core/SoneDownloader.java @@ -219,8 +219,10 @@ public class SoneDownloader extends AbstractService { * @param soneInputStream * The input stream to parse the Sone from * @return The parsed Sone + * @throws SoneException + * if a parse error occurs, or the protocol is invalid */ - public Sone parseSone(Sone originalSone, InputStream soneInputStream) { + public Sone parseSone(Sone originalSone, InputStream soneInputStream) throws SoneException { /* TODO - impose a size limit? */ Document document; @@ -336,8 +338,8 @@ public class SoneDownloader extends AbstractService { if (profileFieldsXml != null) { for (SimpleXML fieldXml : profileFieldsXml.getNodes("field")) { String fieldName = fieldXml.getValue("field-name", null); - String fieldValue = fieldXml.getValue("field-value", null); - if ((fieldName == null) || (fieldValue == null)) { + String fieldValue = fieldXml.getValue("field-value", ""); + if (fieldName == null) { logger.log(Level.WARNING, "Downloaded profile field for Sone %s with missing data! Name: %s, Value: %s", new Object[] { sone, fieldName, fieldValue }); return null; } @@ -442,7 +444,7 @@ public class SoneDownloader extends AbstractService { String id = albumXml.getValue("id", null); String parentId = albumXml.getValue("parent", null); String title = albumXml.getValue("title", null); - String description = albumXml.getValue("description", null); + String description = albumXml.getValue("description", ""); String albumImageId = albumXml.getValue("album-image", null); if ((id == null) || (title == null) || (description == null)) { logger.log(Level.WARNING, "Downloaded Sone %s contains invalid album!", new Object[] { sone });