X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsonitus%2Fdata%2Fsink%2FIcecast2Sink.java;h=87d94969a35114a2ecfc990bb467a948838bd75a;hb=3aca6eb7580456837944877d798f207c4a82e964;hp=4d492fd8bd20890b21b68ea0af95f6a26d190ed2;hpb=c548332c486d812bfce23a9121219bf86ecc5588;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 4d492fd..87d9496 100644 --- a/src/main/java/net/pterodactylus/sonitus/data/sink/Icecast2Sink.java +++ b/src/main/java/net/pterodactylus/sonitus/data/sink/Icecast2Sink.java @@ -23,7 +23,6 @@ import java.io.OutputStream; 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; @@ -32,12 +31,9 @@ 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.data.event.MetadataUpdated; import net.pterodactylus.sonitus.io.InputStreamDrainer; -import com.google.common.base.Function; -import com.google.common.base.Joiner; -import com.google.common.base.Optional; -import com.google.common.collect.FluentIterable; import com.google.common.eventbus.EventBus; import com.google.common.io.BaseEncoding; import com.google.common.io.Closeables; @@ -80,6 +76,7 @@ public class Icecast2Sink implements Sink { /** Whether to publish the server. */ private final boolean publishServer; + /** The output stream to the server. */ private OutputStream socketOutputStream; /** The current metadata. */ @@ -182,13 +179,7 @@ public class Icecast2Sink implements Sink { @Override public void run() { - String metadataString = String.format("%s (%s)", Joiner.on(" - ").skipNulls().join(FluentIterable.from(Arrays.asList(metadata.artist(), metadata.name())).transform(new Function, Object>() { - - @Override - public Object apply(Optional input) { - return input.orNull(); - } - })), "Sonitus"); + String metadataString = String.format("%s (%s)", metadata.title(), "Sonitus"); logger.info(String.format("Updating metadata to %s", metadataString)); Socket socket = null; @@ -218,6 +209,7 @@ public class Icecast2Sink implements Sink { } } }).start(); + eventBus.post(new MetadataUpdated(this, metadata)); } @Override