X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsonitus%2Fdata%2Ffilter%2FPipelineFilter.java;h=638df00b1097cd2fc6a9d1caaa8583d05c88400d;hb=48ff2dfc3ec8aafa119b8e25dade695c5d40312b;hp=59e34be8b832fc30424699fd7304d8d63500a171;hpb=49a2e3007f3fde4fc339ed29bfe54eeb27eba671;p=sonitus.git diff --git a/src/main/java/net/pterodactylus/sonitus/data/filter/PipelineFilter.java b/src/main/java/net/pterodactylus/sonitus/data/filter/PipelineFilter.java index 59e34be..638df00 100644 --- a/src/main/java/net/pterodactylus/sonitus/data/filter/PipelineFilter.java +++ b/src/main/java/net/pterodactylus/sonitus/data/filter/PipelineFilter.java @@ -21,6 +21,7 @@ import java.io.IOException; import java.util.Arrays; import java.util.Collection; import java.util.List; +import java.util.Map; import net.pterodactylus.sonitus.data.AbstractFilter; import net.pterodactylus.sonitus.data.DataPacket; @@ -28,9 +29,8 @@ import net.pterodactylus.sonitus.data.Filter; import net.pterodactylus.sonitus.data.Metadata; import net.pterodactylus.sonitus.data.Pipeline.Connection; -import com.google.common.base.Function; -import com.google.common.collect.FluentIterable; import com.google.common.collect.Lists; +import com.google.common.collect.Maps; /** * {@link Filter} that combines several filters into one. @@ -48,6 +48,9 @@ public class PipelineFilter extends AbstractFilter implements Filter { /** The last filter (for convenience). */ private final Filter lastFilter; + /** The connections for each filter. */ + private final Map filterConnections = Maps.newHashMap(); + /** * Creates a new pipeline filter. * @@ -84,13 +87,8 @@ public class PipelineFilter extends AbstractFilter implements Filter { filter.open(currentMetadata); currentMetadata = filter.metadata(); Connection connection = new Connection(currentSource, Arrays.asList(filter)); - String threadName = String.format("%s → %s.", connection.source().name(), FluentIterable.from(connection.sinks()).transform(new Function() { - - @Override - public String apply(Filter sink) { - return sink.name(); - } - })); + filterConnections.put(filter, connection); + String threadName = String.format("%s → %s", connection.source().name(), filter.name()); new Thread(connection, threadName).start(); currentSource = filter; }