X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FConfigurationSoneParser.java;h=99c1c9d0e6a29733e0fb655852c9518934c5ce24;hp=3d384c1b5260cd3aba484cdb06052cd07101417f;hb=2bacfa78f3191fd9847574a6c8b218a4882844a4;hpb=f90d92147c4cff4abe4ae904c6e89d7382b5921e diff --git a/src/main/java/net/pterodactylus/sone/core/ConfigurationSoneParser.java b/src/main/java/net/pterodactylus/sone/core/ConfigurationSoneParser.java index 3d384c1..99c1c9d 100644 --- a/src/main/java/net/pterodactylus/sone/core/ConfigurationSoneParser.java +++ b/src/main/java/net/pterodactylus/sone/core/ConfigurationSoneParser.java @@ -27,16 +27,15 @@ import net.pterodactylus.util.config.Configuration; /** * Parses a {@link Sone}’s data from a {@link Configuration}. - * - * @author David ‘Bombe’ Roden */ public class ConfigurationSoneParser { private final Configuration configuration; private final Sone sone; private final String sonePrefix; - private final Map albums = new HashMap(); - private final List topLevelAlbums = new ArrayList(); + private final Map albums = new HashMap<>(); + private final List topLevelAlbums = new ArrayList<>(); + private final Map images = new HashMap<>(); public ConfigurationSoneParser(Configuration configuration, Sone sone) { this.configuration = configuration; @@ -85,7 +84,7 @@ public class ConfigurationSoneParser { public Set parsePosts(PostBuilderFactory postBuilderFactory) throws InvalidPostFound { - Set posts = new HashSet(); + Set posts = new HashSet<>(); while (true) { String postPrefix = "/Posts/" + posts.size(); String postId = getString(postPrefix + "/ID", null); @@ -122,7 +121,7 @@ public class ConfigurationSoneParser { public Set parsePostReplies( PostReplyBuilderFactory postReplyBuilderFactory) { - Set replies = new HashSet(); + Set replies = new HashSet<>(); while (true) { String replyPrefix = "/Replies/" + replies.size(); String replyId = getString(replyPrefix + "/ID", null); @@ -148,7 +147,7 @@ public class ConfigurationSoneParser { } public Set parseLikedPostIds() { - Set likedPostIds = new HashSet(); + Set likedPostIds = new HashSet<>(); while (true) { String likedPostId = getString("/Likes/Post/" + likedPostIds.size() + "/ID", @@ -162,7 +161,7 @@ public class ConfigurationSoneParser { } public Set parseLikedPostReplyIds() { - Set likedPostReplyIds = new HashSet(); + Set likedPostReplyIds = new HashSet<>(); while (true) { String likedReplyId = getString( "/Likes/Reply/" + likedPostReplyIds.size() + "/ID", null); @@ -175,7 +174,7 @@ public class ConfigurationSoneParser { } public Set parseFriends() { - Set friends = new HashSet(); + Set friends = new HashSet<>(); while (true) { String friendId = getString("/Friends/" + friends.size() + "/ID", null); @@ -200,8 +199,6 @@ public class ConfigurationSoneParser { String albumDescription = getString(albumPrefix + "/Description", null); String albumParentId = getString(albumPrefix + "/Parent", null); - String albumImageId = - getString(albumPrefix + "/AlbumImage", null); if ((albumTitle == null) || (albumDescription == null)) { throw new InvalidAlbumFound(); } @@ -212,7 +209,6 @@ public class ConfigurationSoneParser { .modify() .setTitle(albumTitle) .setDescription(albumDescription) - .setAlbumImage(albumImageId) .update(); if (albumParentId != null) { Album parentAlbum = albums.get(albumParentId); @@ -270,9 +266,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) {