Make releases of a party availabable.
[demoscenemusic.git] / src / main / java / net / pterodactylus / demoscenemusic / data / DefaultParty.java
index 353e6bb..1b3ace4 100644 (file)
 
 package net.pterodactylus.demoscenemusic.data;
 
+import java.util.Collection;
 /**
- * TODO
+ * Default implementation of a party data container.
  *
  * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
  */
 public class DefaultParty extends DefaultBase implements Party {
 
+       /**
+        * Creates a new party data container.
+        *
+        * @param id
+        *            The ID of the party
+        */
        public DefaultParty(String id) {
                super(id);
        }
 
-       public String name() {
-               return value("name", String.class).get();
+       //
+       // PARTY METHODS
+       //
+
+       /**
+        * {@inheritDoc}
+        */
+       @Override
+       public String getName() {
+               return getValue("name", String.class).get();
+       }
+
+       /**
+        * {@inheritDoc}
+        */
+       @Override
+       public DefaultParty setName(String name) {
+               getValue("name", String.class).set(name);
+               return this;
+       }
+
+       /**
+        * {@inheritDoc}
+        */
+       @Override
+       @SuppressWarnings("unchecked")
+       public Collection<Track> getReleases() {
+               return getValue("releases", Collection.class).get();
        }
 
-       public DefaultParty name(String name) {
-               value("name", String.class).set(name);
+       /**
+        * {@inheritDoc}
+        */
+       @Override
+       public Party setReleases(Collection<Track> tracks) {
+               getValue("releases", Collection.class).set(tracks);
                return this;
        }