-
- 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
public interface MapInlet<K,V,I> extends Inlet<I>
Input connector into aStreamlet
for a key-value map state.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
invalidateOutputKey(K key, KeyEffect effect)
Marks thisMapInlet
as needing aneffect
applied to a givenkey
.void
reconcileOutputKey(K key, int version)
Reconciles the state of an individualkey
in thisMapInlet
, if the version of thisMapInlet
's state differs from the targetversion
.-
Methods inherited from interface swim.streamlet.Inlet
bindInput, disconnectInputs, disconnectOutputs, input, invalidateOutput, reconcileOutput, unbindInput
-
-
-
-
Method Detail
-
invalidateOutputKey
void invalidateOutputKey(K key, KeyEffect effect)
Marks thisMapInlet
as needing aneffect
applied to a givenkey
. Invalidating an individual key invalidates the entire state of theInlet
. But only the invalidated keys need to be updated in order to reconcile the overall state of theInlet
.
-
reconcileOutputKey
void reconcileOutputKey(K key, int version)
Reconciles the state of an individualkey
in thisMapInlet
, if the version of thisMapInlet
's state differs from the targetversion
. To reconcile the state of a key, theMapInlet
first invokesMapOutlet.reconcileInputKey(Object, int)
on itsinput
, if its input is aMapOutlet
, or it invokesOutlet.reconcileInput(int)
, if its input is not aMapOutlet
. Then, if all invalid keys have been reconciled, theMapInlet
invokesStreamlet.reconcile(int)
on its attached streamlet.
-
-