lift mapMaterializedValue to FlowOpsMat

This commit is contained in:
Roland Kuhn 2016-03-18 12:28:27 +01:00
parent 777a400b12
commit 8a3cf8145b
3 changed files with 11 additions and 3 deletions

View file

@ -114,7 +114,7 @@ final class Flow[-In, +Out, +Mat](private[stream] override val module: Module)
/** /**
* Transform the materialized value of this Flow, leaving all other properties as they were. * Transform the materialized value of this Flow, leaving all other properties as they were.
*/ */
def mapMaterializedValue[Mat2](f: Mat Mat2): ReprMat[Out, Mat2] = override def mapMaterializedValue[Mat2](f: Mat Mat2): ReprMat[Out, Mat2] =
new Flow(module.transformMaterializedValue(f.asInstanceOf[Any Any])) new Flow(module.transformMaterializedValue(f.asInstanceOf[Any Any]))
/** /**
@ -1983,6 +1983,11 @@ trait FlowOpsMat[+Out, +Mat] extends FlowOps[Out, Mat] {
def watchTermination[Mat2]()(matF: (Mat, Future[Done]) Mat2): ReprMat[Out, Mat2] = def watchTermination[Mat2]()(matF: (Mat, Future[Done]) Mat2): ReprMat[Out, Mat2] =
viaMat(GraphStages.terminationWatcher)(matF) viaMat(GraphStages.terminationWatcher)(matF)
/**
* Transform the materialized value of this graph, leaving all other properties as they were.
*/
def mapMaterializedValue[Mat2](f: Mat Mat2): ReprMat[Out, Mat2]
/** /**
* INTERNAL API. * INTERNAL API.
*/ */

View file

@ -71,7 +71,7 @@ final class Source[+Out, +Mat](private[stream] override val module: Module)
/** /**
* Transform only the materialized value of this Source, leaving all other properties as they were. * Transform only the materialized value of this Source, leaving all other properties as they were.
*/ */
def mapMaterializedValue[Mat2](f: Mat Mat2): ReprMat[Out, Mat2] = override def mapMaterializedValue[Mat2](f: Mat Mat2): ReprMat[Out, Mat2] =
new Source[Out, Mat2](module.transformMaterializedValue(f.asInstanceOf[Any Any])) new Source[Out, Mat2](module.transformMaterializedValue(f.asInstanceOf[Any Any]))
/** INTERNAL API */ /** INTERNAL API */

View file

@ -659,6 +659,9 @@ object MiMa extends AutoPlugin {
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.impl.fusing.Drop.onPush"), ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.impl.fusing.Drop.onPush"),
ProblemFilters.exclude[FinalClassProblem]("akka.stream.stage.GraphStageLogic$Reading"), // this class is private ProblemFilters.exclude[FinalClassProblem]("akka.stream.stage.GraphStageLogic$Reading"), // this class is private
// lifting this method to the type where it belongs
ProblemFilters.exclude[ReversedMissingMethodProblem]("akka.stream.scaladsl.FlowOpsMat.mapMaterializedValue"),
// #19908 Take is private // #19908 Take is private
ProblemFilters.exclude[MissingClassProblem]("akka.stream.impl.Stages$Take$"), ProblemFilters.exclude[MissingClassProblem]("akka.stream.impl.Stages$Take$"),
ProblemFilters.exclude[MissingClassProblem]("akka.stream.impl.Stages$Take"), ProblemFilters.exclude[MissingClassProblem]("akka.stream.impl.Stages$Take"),