diff --git a/akka-stream/src/main/scala/akka/stream/scaladsl2/FlowGraph.scala b/akka-stream/src/main/scala/akka/stream/scaladsl2/FlowGraph.scala index e58952099f..4f5efbc90e 100644 --- a/akka-stream/src/main/scala/akka/stream/scaladsl2/FlowGraph.scala +++ b/akka-stream/src/main/scala/akka/stream/scaladsl2/FlowGraph.scala @@ -128,9 +128,15 @@ private[akka] object FlowGraphInternal { sealed trait Vertex case class SourceVertex(source: Source[_]) extends Vertex { override def toString = source.toString + // these are unique keys, case class equality would break them + final override def equals(other: Any): Boolean = super.equals(other) + final override def hashCode: Int = super.hashCode } case class SinkVertex(sink: Sink[_]) extends Vertex { override def toString = sink.toString + // these are unique keys, case class equality would break them + final override def equals(other: Any): Boolean = super.equals(other) + final override def hashCode: Int = super.hashCode } sealed trait NamedVertex extends Vertex { diff --git a/akka-stream/src/main/scala/akka/stream/scaladsl2/Sink.scala b/akka-stream/src/main/scala/akka/stream/scaladsl2/Sink.scala index 77ce7a241f..25709d2d3d 100644 --- a/akka-stream/src/main/scala/akka/stream/scaladsl2/Sink.scala +++ b/akka-stream/src/main/scala/akka/stream/scaladsl2/Sink.scala @@ -56,9 +56,6 @@ trait SimpleSink[-Out] extends Sink[Out] { */ def isActive: Boolean = false - // these are unique keys, case class equality would break them - final override def equals(other: Any): Boolean = super.equals(other) - final override def hashCode: Int = super.hashCode } /** diff --git a/akka-stream/src/test/scala/akka/stream/scaladsl2/FlowGraphCompileSpec.scala b/akka-stream/src/test/scala/akka/stream/scaladsl2/FlowGraphCompileSpec.scala index 19f4dd5e11..59f6371816 100644 --- a/akka-stream/src/test/scala/akka/stream/scaladsl2/FlowGraphCompileSpec.scala +++ b/akka-stream/src/test/scala/akka/stream/scaladsl2/FlowGraphCompileSpec.scala @@ -144,9 +144,8 @@ class FlowGraphCompileSpec extends AkkaSpec { val in5 = IterableSource(List("b")) val in7 = IterableSource(List("a")) val out2 = PublisherSink[String] - val out9 = FutureSink[String] - val out10 = ForeachSink[String](_ ⇒ ()) - // FIXME PublisherSink can't be object, equality + val out9 = PublisherSink[String] + val out10 = PublisherSink[String] def f(s: String) = FlowFrom[String].transform(s, op[String, String]) import FlowGraphImplicits._