X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fdemoscenemusic%2Fdata%2FDefaultTrack.java;h=804d7106487e340b9ef1a2718bbd6453be151fd9;hb=b2ab3fd2aefa2815f8c55b5b0e8b8d2eb912a192;hp=db358f8d28a5e3eb0b8de65260ac78a2c1ca99d2;hpb=f910bfec8c988bc9baf7e5e3a05b19237e899cec;p=demoscenemusic.git diff --git a/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultTrack.java b/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultTrack.java index db358f8..804d710 100644 --- a/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultTrack.java +++ b/src/main/java/net/pterodactylus/demoscenemusic/data/DefaultTrack.java @@ -19,48 +19,150 @@ package net.pterodactylus.demoscenemusic.data; import java.util.Collection; import java.util.List; +import java.util.Map; /** - * TODO + * Default implementation of a track data container. * * @author David ‘Bombe’ Roden */ public class DefaultTrack extends DefaultBase implements Track { + /** + * Creates a new track data container. + * + * @param id + * The ID of the track + */ public DefaultTrack(String id) { super(id); } + // + // TRACK METHODS + // + + /** + * {@inheritDoc} + */ + @Override + public String getName() { + return getValue("name", String.class).get(); + } + + /** + * {@inheritDoc} + */ + @Override + public Track setName(String name) { + getValue("name", String.class).set(name); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + @SuppressWarnings("unchecked") + public List getArtists() { + return getValue("artists", List.class).get(); + } + + /** + * {@inheritDoc} + */ + @Override + public Track setArtists(List artists) { + getValue("artists", List.class).set(artists); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + @SuppressWarnings("unchecked") + public Collection