+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public String getRemix() {
+ return getValue("remix", String.class).get();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public Track setRemix(String remix) {
+ getValue("remix", String.class).set(remix);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ @SuppressWarnings("unchecked")
+ public List<Artist> getRemixArtists() {
+ return getValue("remixArtists", List.class).get();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public Track setRemixArtists(List<Artist> remixArtists) {
+ getValue("remixArtists", List.class).set(remixArtists);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ @SuppressWarnings("unchecked")
+ public Collection<TrackDerivative> getDerivatives() {
+ return getValue("derivatives", Collection.class).get();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public Track setDerivatives(Collection<TrackDerivative> derivatives) {
+ getValue("derivatives", Collection.class).set(derivatives);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ @SuppressWarnings("unchecked")
+ public Map<Relationship, Collection<Track>> getRelatedTracks() {
+ return getValue("relatedTracks", Map.class).get();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public Track setRelatedTracks(Map<Relationship, Collection<Track>> relatedTracks) {
+ getValue("relatedTracks", Map.class).set(relatedTracks);
+ return this;
+ }
+