final class GraphAssembly extends AnyRef
INTERNAL API
A GraphAssembly represents a small stream processing graph to be executed by the interpreter. Instances of this class **must not** be mutated after construction.
The array
may contain the attribute information of the original atomic module, otherwise
it must contain a none (otherwise the enclosing module could not overwrite attributes defined in this array).originalAttributes
The arrays ins and outs correspond to the notion of a *connection* in the GraphInterpreter. Each slot *i* contains the input and output port corresponding to connection *i*. Slots where the graph is not closed (i.e. ports are exposed to the external world) are marked with *null* values. For example if an input port *p* is exposed, then outs(p) will contain a *null*.
The arrays inOwners and outOwners are lookup tables from a connection id (the index of the slot) to a slot in the stages array, indicating which stage is the owner of the given input or output port. Slots which would correspond to non-existent stages (where the corresponding port is null since it represents the currently unknown external context) contain the value GraphInterpreter#Boundary.
The current assumption by the infrastructure is that the layout of these arrays looks like this:
+---------------------------------------+-----------------+ inOwners: | index to stages array | Boundary (-1) | +----------------+----------------------+-----------------+ ins: | exposed inputs | internal connections | nulls | +----------------+----------------------+-----------------+ outs: | nulls | internal connections | exposed outputs | +----------------+----------------------+-----------------+ outOwners: | Boundary (-1) | index to stages array | +----------------+----------------------------------------+
In addition, it is also assumed by the infrastructure that the order of exposed inputs and outputs in the corresponding segments of these arrays matches the exact same order of the ports in the Shape.
- Source
- GraphInterpreter.scala
- Alphabetic
- By Inheritance
- GraphAssembly
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
+(other: String): String
- Implicit
- This member is added by an implicit conversion from GraphAssembly to any2stringadd[GraphAssembly] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (GraphAssembly, B)
- Implicit
- This member is added by an implicit conversion from GraphAssembly to ArrowAssoc[GraphAssembly] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
- def connectionCount: Int
-
def
ensuring(cond: (GraphAssembly) ⇒ Boolean, msg: ⇒ Any): GraphAssembly
- Implicit
- This member is added by an implicit conversion from GraphAssembly to Ensuring[GraphAssembly] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (GraphAssembly) ⇒ Boolean): GraphAssembly
- Implicit
- This member is added by an implicit conversion from GraphAssembly to Ensuring[GraphAssembly] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): GraphAssembly
- Implicit
- This member is added by an implicit conversion from GraphAssembly to Ensuring[GraphAssembly] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): GraphAssembly
- Implicit
- This member is added by an implicit conversion from GraphAssembly to Ensuring[GraphAssembly] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from GraphAssembly to StringFormat[GraphAssembly] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- val inOwners: Array[Int]
- val ins: Array[Inlet[_]]
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
materialize(inheritedAttributes: Attributes, copiedModules: Array[Module], matVal: java.util.Map[Module, Any], register: (MaterializedValueSource[Any]) ⇒ Unit): (Array[Connection], Array[GraphStageLogic])
Takes an interpreter and returns three arrays required by the interpreter containing the input, output port handlers and the stage logic instances.
Takes an interpreter and returns three arrays required by the interpreter containing the input, output port handlers and the stage logic instances.
Returns a tuple of
- lookup table for Connections
- array of the logics
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- val originalAttributes: Array[Attributes]
- val outOwners: Array[Int]
- val outs: Array[Outlet[_]]
- val stages: Array[GraphStageWithMaterializedValue[Shape, Any]]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- GraphAssembly → AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
→[B](y: B): (GraphAssembly, B)
- Implicit
- This member is added by an implicit conversion from GraphAssembly to ArrowAssoc[GraphAssembly] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc