import java.util.List;
import javax.annotation.Nonnull;
+import net.pterodactylus.sone.database.AlbumBuilder;
+import net.pterodactylus.sone.database.ImageBuilder;
+
import com.google.common.base.Function;
import com.google.common.base.Predicate;
import com.google.common.collect.FluentIterable;
*/
Sone getSone();
- /**
- * Sets the owner of the album. The owner can only be set as long as the
- * current owner is {@code null}.
- *
- * @param sone
- * The album owner
- * @return This album
- */
- Album setSone(Sone sone);
-
- /**
- * Returns the nested albums.
- *
- * @return The nested albums
- */
List<Album> getAlbums();
/**
- * Adds an album to this album.
- *
- * @param album
- * The album to add
- */
- void addAlbum(Album album);
-
- /**
* Removes an album from this album.
*
* @param album
List<Image> getImages();
/**
- * Adds the given image to this album.
- *
- * @param image
- * The image to add
- */
- void addImage(Image image);
-
- /**
* Removes the given image from this album.
*
* @param image
*/
String getDescription();
+ AlbumBuilder newAlbumBuilder() throws IllegalStateException;
+
+ ImageBuilder newImageBuilder() throws IllegalStateException;
+
/**
* Returns a modifier for this album.
*