X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsonitus%2Fdata%2Fsource%2FStreamSource.java;h=9a624e0457f5e8a01d24027b7c9523caec9ac881;hb=f554e51504f7e39e658a84d79c041e0b0d8a6393;hp=d9df054f409cb352c7fdc38b77c814c020e239ec;hpb=333be3ce0c4f49a8b5ce447b80bb4491f0f7001d;p=sonitus.git diff --git a/src/main/java/net/pterodactylus/sonitus/data/source/StreamSource.java b/src/main/java/net/pterodactylus/sonitus/data/source/StreamSource.java index d9df054..9a624e0 100644 --- a/src/main/java/net/pterodactylus/sonitus/data/source/StreamSource.java +++ b/src/main/java/net/pterodactylus/sonitus/data/source/StreamSource.java @@ -22,9 +22,12 @@ import java.io.IOException; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLConnection; +import java.util.Collections; +import java.util.List; import java.util.Map; import net.pterodactylus.sonitus.data.ContentMetadata; +import net.pterodactylus.sonitus.data.Controller; import net.pterodactylus.sonitus.data.FormatMetadata; import net.pterodactylus.sonitus.data.Metadata; import net.pterodactylus.sonitus.data.Source; @@ -47,6 +50,9 @@ public class StreamSource implements Source { /** The URL of the stream. */ private final String streamUrl; + /** The name of the station. */ + private final String streamName; + /** The metadata stream. */ private final MetadataStream metadataStream; @@ -111,6 +117,21 @@ public class StreamSource implements Source { metadata = new Metadata(new FormatMetadata(audioParameters.get("ice-channels"), audioParameters.get("ice-samplerate"), "MP3"), new ContentMetadata()); metadataStream = new MetadataStream(new BufferedInputStream(httpUrlConnection.getInputStream()), metadataInterval); + streamName = httpUrlConnection.getHeaderField("ICY-Name"); + } + + // + // CONTROLLED METHODS + // + + @Override + public String name() { + return streamName; + } + + @Override + public List> controllers() { + return Collections.emptyList(); } // @@ -123,7 +144,8 @@ public class StreamSource implements Source { if (!streamMetadata.isPresent()) { return metadata; } - return metadata = metadata.title(streamMetadata.get().title()); + metadata = metadata.title(streamMetadata.get().title()); + return metadata; } @Override