Class RunnableGraph<Mat>

  • All Implemented Interfaces:
    Graph<ClosedShape,​Mat>

    public abstract class RunnableGraph<Mat>
    extends java.lang.Object
    implements Graph<ClosedShape,​Mat>
    Java API

    Flow with attached input and output, can be executed.

    • Constructor Detail

      • RunnableGraph

        public RunnableGraph()
    • Method Detail

      • fromGraph

        public static <Mat> RunnableGraph<Mat> fromGraph​(Graph<ClosedShape,​Mat> graph)
        A graph with a closed shape is logically a runnable graph, this method makes it so also in type.
      • run

        public Mat run​(ClassicActorSystemProvider systemProvider)
        Run this flow and return the materialized values of the flow.

        Uses the system materializer.

      • run

        public abstract Mat run​(Materializer materializer)
        Run this flow using a special materializer and return the materialized values of the flow.

        Prefer the method taking an ActorSystem unless you have special requirements.

      • mapMaterializedValue

        public abstract <Mat2> RunnableGraph<Mat2> mapMaterializedValue​(Function<Mat,​Mat2> f)
        Transform only the materialized value of this RunnableGraph, leaving all other properties as they were.
      • withAttributes

        public abstract RunnableGraph<Mat> withAttributes​(Attributes attr)
        Description copied from interface: Graph
        Replace the attributes of this Flow with the given ones. If this Flow is a composite of multiple graphs, new attributes on the composite will be less specific than attributes set directly on the individual graphs of the composite.
        Specified by:
        withAttributes in interface Graph<ClosedShape,​Mat>
      • addAttributes

        public RunnableGraph<Mat> addAttributes​(Attributes attr)
        Description copied from interface: Graph
        Add the given attributes to this Graph. If the specific attribute was already present on this graph this means the added attribute will be more specific than the existing one. If this Source is a composite of multiple graphs, new attributes on the composite will be less specific than attributes set directly on the individual graphs of the composite.
        Specified by:
        addAttributes in interface Graph<ClosedShape,​Mat>
      • named

        public RunnableGraph<Mat> named​(java.lang.String name)
        Description copied from interface: Graph
        Specifies the name of the Graph. If the name is null or empty the name is ignored, i.e. #none is returned.
        Specified by:
        named in interface Graph<ClosedShape,​Mat>
      • asScala

        public abstract RunnableGraph<Mat> asScala()
        Converts this Java DSL element to its Scala DSL counterpart.