X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsonitus%2Fdata%2Fsink%2FIcecast2Sink.java;h=5487cc48fb5b34784f706dbd50ef4939122f2b76;hb=f554e51504f7e39e658a84d79c041e0b0d8a6393;hp=638e15ba7c96e5cb5b6ff67486c4ba414a91040a;hpb=563fd3ebac7963e50ba3756fd6d9156b759308d4;p=sonitus.git diff --git a/src/main/java/net/pterodactylus/sonitus/data/sink/Icecast2Sink.java b/src/main/java/net/pterodactylus/sonitus/data/sink/Icecast2Sink.java index 638e15b..5487cc4 100644 --- a/src/main/java/net/pterodactylus/sonitus/data/sink/Icecast2Sink.java +++ b/src/main/java/net/pterodactylus/sonitus/data/sink/Icecast2Sink.java @@ -24,9 +24,12 @@ import java.io.UnsupportedEncodingException; import java.net.Socket; import java.net.URLEncoder; import java.util.Arrays; +import java.util.Collections; +import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; +import net.pterodactylus.sonitus.data.Controller; import net.pterodactylus.sonitus.data.Metadata; import net.pterodactylus.sonitus.data.Sink; import net.pterodactylus.sonitus.io.InputStreamDrainer; @@ -75,6 +78,9 @@ public class Icecast2Sink implements Sink { private OutputStream socketOutputStream; + /** The current metadata. */ + private Metadata metadata; + /** * Creates a new Icecast2 sink. * @@ -108,6 +114,25 @@ public class Icecast2Sink implements Sink { } // + // CONTROLLED METHODS + // + + @Override + public String name() { + return String.format("icecast://%s:%d/%s", server, port, mountPoint); + } + + @Override + public Metadata metadata() { + return metadata; + } + + @Override + public List> controllers() { + return Collections.emptyList(); + } + + // // SINK METHODS // @@ -145,6 +170,7 @@ public class Icecast2Sink implements Sink { @Override public void metadataUpdated(final Metadata metadata) { + this.metadata = metadata; new Thread(new Runnable() { @Override