Match Station
Synchronizes (assembles) instances arriving on several inputs: when one instance is available on every input — optionally with the same matching key — the station removes one from each, combines them into a single instance (carrying the members as its attached object), and sends it onward.
With no keyExtractor, any one instance from each input is matched (an unkeyed AND-join). With a keyExtractor, only instances sharing a key value across all inputs are matched. Wire upstream nodes to the input endpoints.
Note: assembly reduces population — N members become one combined instance — so the owning network's number-in-system will not balance for assembly models; use the station's own statistics.
Parameters
the model element serving as this station's parent
the number of inputs to synchronize (>= 2)
optional key for keyed matching; null matches one from each input
where combined instances are sent
the name of the station
Constructors
Properties
True if this node has any onward routing configured (a static next receiver, a station-level sender, or a class route). A non-terminal node for which this is false — and which is not a non-terminal step of a registered route — is a dangling node and fails validation.
The number of matched sets formed (assemblies emitted).
Time-weighted number of instances waiting to be matched across all inputs.
Functions
This method should be overridden by subclasses that need actions performed to initialize prior to a replication. It is called once before each replication occurs if the model element wants initialization. It is called after beforeReplication() is called
Returns the receiver for input index.
Sets the receiver of combined instances.
The statically known receivers this node may route to. Best-effort: empty when the node has no static link or when its routing is opaque (for example, a probabilistic sender whose destinations are not introspectable).