+ * @return A modifier for this album
+ * @throws IllegalStateException
+ * if this album can not be modified
+ */
+ Modifier modify() throws IllegalStateException;
+
+ /**
+ * Allows modifying an album. Modifications are only performed once {@link
+ * #update()} has succesfully returned a new album with the modifications
+ * made.