package net.pterodactylus.demoscenemusic.data;
+import java.util.Collection;
+
/**
- * TODO
+ * Data interface for groups.
*
* @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
*/
-public class Group extends Base {
+public interface Group extends Base {
- private String name;
- private String url;
+ /**
+ * Returns the name of this group.
+ *
+ * @return The name of this group
+ */
+ public String getName();
- public Group(String id) {
- super(id);
- }
+ /**
+ * Sets the name of this group.
+ *
+ * @param name
+ * The name of this group
+ * @return This group
+ */
+ public Group setName(String name);
- public String name() {
- return name;
- }
+ /**
+ * Returns the URL of this group’s website.
+ *
+ * @return The URL of this group’s website
+ */
+ public String getUrl();
- public Group name(String name) {
- this.name = name;
- return this;
- }
+ /**
+ * Sets the URL of this group’s website.
+ *
+ * @param url
+ * The URL of this group’s website
+ * @return This group
+ */
+ public Group setUrl(String url);
- public String url() {
- return url;
- }
+ /**
+ * Returns all artists belonging to this group.
+ *
+ * @return All artists belonging to this group
+ */
+ public Collection<Artist> getArtists();
- public Group url(String url) {
- this.url = url;
- return this;
- }
+ /**
+ * Sets all artists belonging to this group.
+ *
+ * @param artists
+ * All artists belonging to this group
+ * @return This group
+ */
+ public Group setArtists(Collection<Artist> artists);
}