X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fdata%2Fimpl%2FAlbumImpl.java;h=6a45187d06a0713427dd639eb049470e22113227;hp=46584e877e5511c8429ced27c8f6418016a5bc8d;hb=6b65a32a69b0e3721c58b4501a6b58fa4989f162;hpb=9f1e09d12a8e07cd235dfb790747e04ecfba3965 diff --git a/src/main/java/net/pterodactylus/sone/data/impl/AlbumImpl.java b/src/main/java/net/pterodactylus/sone/data/impl/AlbumImpl.java index 46584e8..6a45187 100644 --- a/src/main/java/net/pterodactylus/sone/data/impl/AlbumImpl.java +++ b/src/main/java/net/pterodactylus/sone/data/impl/AlbumImpl.java @@ -21,7 +21,6 @@ import static com.google.common.base.Optional.absent; import static com.google.common.base.Optional.fromNullable; import static com.google.common.base.Preconditions.checkArgument; import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Preconditions.checkState; import java.util.ArrayList; import java.util.HashMap; @@ -30,6 +29,7 @@ import java.util.Map; import java.util.UUID; import net.pterodactylus.sone.data.Album; +import net.pterodactylus.sone.data.IdBuilder; import net.pterodactylus.sone.data.Image; import net.pterodactylus.sone.data.Sone; @@ -47,6 +47,8 @@ import com.google.common.hash.Hashing; */ public class AlbumImpl implements Album { + private final IdBuilder idBuilder = new IdBuilder(); + /** The ID of this album. */ private final String id; @@ -96,6 +98,11 @@ public class AlbumImpl implements Album { @Override public String getId() { + return idBuilder.buildId(sone.getId(), id); + } + + @Override + public String getInternalId() { return id; } @@ -135,7 +142,7 @@ public class AlbumImpl implements Album { checkArgument(equals(album.getParent()), "album must belong to this album"); int oldIndex = albums.indexOf(album); if (oldIndex <= 0) { - return null; + return album; } albums.remove(oldIndex); albums.add(oldIndex - 1, album); @@ -149,7 +156,7 @@ public class AlbumImpl implements Album { checkArgument(equals(album.getParent()), "album must belong to this album"); int oldIndex = albums.indexOf(album); if ((oldIndex < 0) || (oldIndex >= (albums.size() - 1))) { - return null; + return album; } albums.remove(oldIndex); albums.add(oldIndex + 1, album); @@ -210,7 +217,7 @@ public class AlbumImpl implements Album { checkArgument(image.getAlbum().equals(this), "image must belong to this album"); int oldIndex = imageIds.indexOf(image.getId()); if (oldIndex <= 0) { - return null; + return image; } imageIds.remove(image.getId()); imageIds.add(oldIndex - 1, image.getId()); @@ -225,7 +232,7 @@ public class AlbumImpl implements Album { checkArgument(image.getAlbum().equals(this), "image must belong to this album"); int oldIndex = imageIds.indexOf(image.getId()); if ((oldIndex == -1) || (oldIndex >= (imageIds.size() - 1))) { - return null; + return image; } imageIds.remove(image.getId()); imageIds.add(oldIndex + 1, image.getId()); @@ -324,8 +331,6 @@ public class AlbumImpl implements Album { }; } - public static class AlbumTitleMustNotBeEmpty extends IllegalStateException { } - // // FINGERPRINTABLE METHODS //