X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fdata%2FAlbum.java;h=56bddb2b3f0635c66c20ee393f3383fd5f630705;hb=262f8b38695a4e3141bc0b828edd16e9eb2ea8ef;hp=ab5822b02b36dc5a4db696e6a11737c051a3dd3d;hpb=b50dc71166ed2e9e7274fdfe545b21db614f820d;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/data/Album.java b/src/main/java/net/pterodactylus/sone/data/Album.java index ab5822b..56bddb2 100644 --- a/src/main/java/net/pterodactylus/sone/data/Album.java +++ b/src/main/java/net/pterodactylus/sone/data/Album.java @@ -25,6 +25,7 @@ import java.util.UUID; import net.pterodactylus.util.collection.Mapper; import net.pterodactylus.util.collection.Mappers; +import net.pterodactylus.util.object.Default; import net.pterodactylus.util.validation.Validation; /** @@ -179,7 +180,7 @@ public class Album implements Fingerprintable { image.getAlbum().removeImage(image); } image.setAlbum(this); - if (imageIds.isEmpty()) { + if (imageIds.isEmpty() && (albumImage == null)) { albumImage = image.getId(); } if (!imageIds.contains(image.getId())) { @@ -251,7 +252,7 @@ public class Album implements Fingerprintable { if (albumImage == null) { return null; } - return images.get(albumImage); + return Default.forNull(images.get(albumImage), images.values().iterator().next()); } /** @@ -366,6 +367,9 @@ public class Album implements Fingerprintable { fingerprint.append("ID(").append(id).append(')'); fingerprint.append("Title(").append(title).append(')'); fingerprint.append("Description(").append(description).append(')'); + if (albumImage != null) { + fingerprint.append("AlbumImage(").append(albumImage).append(')'); + } /* add nested albums. */ fingerprint.append("Albums(");