- All Superinterfaces:
Inlet<I>
- All Known Subinterfaces:
MapDownlink<K,
,V> MapInletMapOutlet<KI,
,KO, VI, VO, I, O> MapInletOutlet<K,
,V, I, O> MapInoutlet<K,
,VI, VO, I, O> MapLane<K,
V>
- All Known Implementing Classes:
AbstractMapInlet
,AbstractMapInletMapOutlet
,AbstractMapInletOutlet
,AbstractMapInoutlet
,FilterFieldsCombinator
,FilterFieldsOperator
,JoinMapLaneDownlink
,MapDownlinkView
,MapFieldValuesCombinator
,MapFieldValuesOperator
,MapLaneView
,MapOutput
,MemoizeMapCombinator
,OutletMapInlet
,ReduceFieldsCombinator
,ReduceFieldsOperator
,WatchFieldsCombinator
,WatchFieldsOperator
Input connector into a
Streamlet
for a key-value map state.-
Method Summary
Modifier and TypeMethodDescriptionvoid
decohereOutputKey
(K key, KeyEffect effect) Marks thisMapInlet
as needing aneffect
applied to a givenkey
.void
recohereOutputKey
(K key, int version) Updates the state of an individualkey
in thisMapInlet
to make it consistent with the targetversion
.Methods inherited from interface swim.streamlet.Inlet
bindInput, decohereOutput, disconnectInputs, disconnectOutputs, input, recohereOutput, unbindInput
-
Method Details
-
decohereOutputKey
Marks thisMapInlet
as needing aneffect
applied to a givenkey
. Decohering an individual key decoheres the entire state of theInlet
. But only the decoherent keys need to be updated in order to recohere the overall state of theInlet
. -
recohereOutputKey
Updates the state of an individualkey
in thisMapInlet
to make it consistent with the targetversion
. TheMapInlet
only needs to update if the currentversion
differs from the targetversion
. To update the state of a key, theMapInlet
first invokesMapOutlet.recohereInputKey(Object, int)
on itsinput
, if its input is aMapOutlet
, or it invokesOutlet.recohereInput(int)
, if its input is not aMapOutlet
. Then, if all decoherent keys have been recohered, theMapInlet
invokesStreamlet.recohere(int)
on its attached streamlet.
-