X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FConfigurationSoneParser.java;h=f592c1eaf80888ea85c561c6e6f26e504f9ed152;hb=851ef7a7f4e25fe3c57c2d9c67349acce58f1ddc;hp=3d384c1b5260cd3aba484cdb06052cd07101417f;hpb=f90d92147c4cff4abe4ae904c6e89d7382b5921e;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/core/ConfigurationSoneParser.java b/src/main/java/net/pterodactylus/sone/core/ConfigurationSoneParser.java index 3d384c1..f592c1e 100644 --- a/src/main/java/net/pterodactylus/sone/core/ConfigurationSoneParser.java +++ b/src/main/java/net/pterodactylus/sone/core/ConfigurationSoneParser.java @@ -33,18 +33,19 @@ import net.pterodactylus.util.config.Configuration; public class ConfigurationSoneParser { private final Configuration configuration; - private final Sone sone; + private final String soneId; private final String sonePrefix; private final Map albums = new HashMap(); private final List topLevelAlbums = new ArrayList(); + private final Map images = new HashMap(); - public ConfigurationSoneParser(Configuration configuration, Sone sone) { + public ConfigurationSoneParser(Configuration configuration, String soneId) { this.configuration = configuration; - this.sone = sone; - sonePrefix = "Sone/" + sone.getId(); + this.soneId = soneId; + sonePrefix = "Sone/" + soneId; } - public Profile parseProfile() { + public Profile parseProfile(Sone sone) { Profile profile = new Profile(sone); profile.setFirstName(getString("/Profile/FirstName", null)); profile.setMiddleName(getString("/Profile/MiddleName", null)); @@ -99,7 +100,7 @@ public class ConfigurationSoneParser { } PostBuilder postBuilder = postBuilderFactory.newPostBuilder() .withId(postId) - .from(sone.getId()) + .from(soneId) .withTime(postTime) .withText(postText); String postRecipientId = @@ -138,7 +139,7 @@ public class ConfigurationSoneParser { PostReplyBuilder postReplyBuilder = postReplyBuilderFactory .newPostReplyBuilder() .withId(replyId) - .from(sone.getId()) + .from(soneId) .to(postId) .withTime(replyTime) .withText(replyText); @@ -188,7 +189,7 @@ public class ConfigurationSoneParser { } public List parseTopLevelAlbums( - AlbumBuilderFactory albumBuilderFactory) { + AlbumBuilderFactory albumBuilderFactory, Sone sone) { int albumCounter = 0; while (true) { String albumPrefix = "/Albums/" + albumCounter++; @@ -232,7 +233,7 @@ public class ConfigurationSoneParser { return unmodifiableMap(albums); } - public void parseImages(ImageBuilderFactory imageBuilderFactory) { + public void parseImages(ImageBuilderFactory imageBuilderFactory, Sone sone) { int imageCounter = 0; while (true) { String imagePrefix = "/Images/" + imageCounter++; @@ -270,9 +271,14 @@ public class ConfigurationSoneParser { .setHeight(height) .update(); album.addImage(image); + images.put(image.getId(), image); } } + public Map getImages() { + return images; + } + private boolean albumAttributesAreInvalid(String albumId, String key, String title, String description, Long creationTime, Integer width, Integer height) {