- java.lang.Object
-
- swim.runtime.AbstractSwimRef
-
- swim.runtime.AbstractTierBinding
-
- swim.runtime.LaneView
-
- swim.runtime.warp.WarpLaneView
-
- swim.runtime.lane.MapLaneView<K,V>
-
- All Implemented Interfaces:
Iterable<Map.Entry<K,V>>,Map<K,V>,SortedMap<K,V>,DownlinkFactory,Lane,MapLane<K,V>,SwimRef,WarpLane,Observable<Object>,ObservableIterableMap<K,V>,ObservableMap<K,V>,ObservableOrderedMap<K,V>,ObservableSortedMap<K,V>,CellContext,TierBinding,Inlet<Map<K,V>>,MapInlet<K,V,Map<K,V>>,MapOutlet<K,V,MapLane<K,V>>,Outlet<MapLane<K,V>>,IterableMap<K,V>,Log,OrderedMap<K,V>
public class MapLaneView<K,V> extends WarpLaneView implements MapLane<K,V>
-
-
Field Summary
Fields Modifier and Type Field Description protected AgentContextagentContextprotected MapData<K,V>dataViewprotected HashTrieMap<K,KeyEffect>effectsprotected intflagsprotected MapOutlet<K,V,? extends Map<K,V>>inputprotected Form<K>keyFormprotected MapLaneModellaneBindingprotected HashTrieMap<K,KeyOutlet<K,V>>outletsprotected Inlet<? super MapLane<K,V>>[]outputsprotected Form<V>valueFormprotected intversion-
Fields inherited from class swim.runtime.AbstractTierBinding
CLOSED_PHASE, CLOSED_STATE, CLOSING_STATE, FAILED_STATE, FAILING_STATE, LOADED_PHASE, LOADED_STATE, LOADING_STATE, OPENED_PHASE, OPENED_STATE, OPENING_STATE, PHASE_MASK, PHASE_SHIFT, RECOVERING_STATE, STARTED_PHASE, STARTED_STATE, STARTING_STATE, STATE_MASK, status, STATUS, STOPPING_STATE, UNLOADING_STATE
-
-
Constructor Summary
Constructors Constructor Description MapLaneView(AgentContext agentContext, Form<K> keyForm, Form<V> valueForm)
-
Method Summary
Modifier and Type Method Description AgentContextagentContext()voidbindInput(MapOutlet<K,V,? extends Map<K,V>> input)voidbindInput(Outlet<? extends Map<K,V>> input)Connects thisInletto anOutletfrom which it will acquire its state.voidbindOutput(Inlet<? super MapLane<K,V>> output)Adds anoutputto the set ofInlets that depend on the state of thisOutlet.voidclear()voidclose()Comparator<? super K>comparator()booleancontainsKey(Object key)Returnstrueif the current state of thisMapOutletcontains the givenkey; otherwise returnsfalse.booleancontainsValue(Object value)MapLaneModelcreateLaneBinding()MapLaneView<K,V>didClear(DidClear didClear)MapLaneView<K,V>didCommand(DidCommand didCommand)MapLaneView<K,V>didDrop(DidDrop didDrop)MapLaneView<K,V>didEnter(DidEnter didEnter)protected voiddidInvalidate()protected voiddidInvalidateKey(K key, KeyEffect effect)MapLaneView<K,V>didLeave(DidLeave didLeave)protected voiddidReconcile(int version)protected voiddidReconcileKey(K key, KeyEffect effect, int version)MapLaneView<K,V>didRemove(DidRemoveKey<K,V> didRemove)MapLaneView<K,V>didTake(DidTake didTake)protected voiddidUpdate(int version)MapLaneView<K,V>didUpdate(DidUpdateKey<K,V> didUpdate)MapLaneView<K,V>didUplink(DidUplink didUplink)voiddisconnectInputs()Disconnects allInlets dominated by thisInletin the dataflow dependency graph.voiddisconnectOutputs()Disconnects allOutlets dominated by thisInletin the dataflow graph.booleandispatchDidClear(Link link, boolean preemptive)booleandispatchDidDrop(Link link, int lower, boolean preemptive)booleandispatchDidRemove(Link link, K key, V oldValue, boolean preemptive)booleandispatchDidTake(Link link, int upper, boolean preemptive)booleandispatchDidUpdate(Link link, K key, V newValue, V oldValue, boolean preemptive)booleandispatchWillClear(Link link, boolean preemptive)booleandispatchWillDrop(Link link, int lower, boolean preemptive)booleandispatchWillRemove(Link link, K key, boolean preemptive)booleandispatchWillTake(Link link, int upper, boolean preemptive)Map.Entry<Boolean,V>dispatchWillUpdate(Link link, K key, V newValue, boolean preemptive)voiddrop(int lower)Set<Map.Entry<K,V>>entrySet()Map.Entry<K,V>firstEntry()KfirstKey()VfirstValue()MapLane<K,V>get()Returns the current state of thisOutlet.Vget(Object key)Returns the value assocaited with the givenkeyin the current state of thisMapOutlet, if defined; otherwise returnsnull.Map.Entry<K,V>getEntry(Object key)Map.Entry<K,V>getIndex(int index)OrderedMap<K,V>headMap(K toKey)intindexOf(Object key)MapOutlet<K,V,? extends Map<K,V>>input()Returns theOutletfrom which thisInletacquires its state; returnsnullif thisInletis disconnected.voidinvalidate()voidinvalidateInput()voidinvalidateInputKey(K key, KeyEffect effect)Marks thisMapOutletas needing aneffectapplied to a givenkey.voidinvalidateKey(K key, KeyEffect effect)voidinvalidateOutput()Marks thisInlet—and theStreamletto which thisInletis attached—as having stale state.voidinvalidateOutputKey(K key, KeyEffect effect)Marks thisMapInletas needing aneffectapplied to a givenkey.booleanisEmpty()booleanisResident()MapLaneView<K,V>isResident(boolean isResident)booleanisTransient()MapLaneView<K,V>isTransient(boolean isTransient)OrderedMapCursor<K,V>iterator()<K2> MapLaneView<K2,V>keyClass(Class<K2> keyClass)Form<K>keyForm()<K2> MapLaneView<K2,V>keyForm(Form<K2> keyForm)Cursor<K>keyIterator()Returns anIteratorover the keys in the current state of thisMapOutlet.Set<K>keySet()MapLaneModellaneBinding()voidlaneDidClear()voidlaneDidDrop(int lower)voidlaneDidRemove(K key, V oldValue)voidlaneDidTake(int upper)voidlaneDidUpdate(K key, V newValue, V oldValue)voidlaneWillClear()voidlaneWillDrop(int lower)voidlaneWillRemove(K key)voidlaneWillTake(int upper)VlaneWillUpdate(K key, V newValue)Map.Entry<K,V>lastEntry()KlastKey()VlastValue()Map.Entry<K,V>nextEntry(K key)KnextKey(K key)VnextValue(K key)MapLaneView<K,V>observe(Object observer)protected voidonInvalidate()protected voidonInvalidateKey(K key, KeyEffect effect)protected voidonReconcile(int version)protected voidonReconcileKey(K key, KeyEffect effect, int version)Outlet<V>outlet(K key)Returns anOutletthat updates when the specifiedkeyupdates.Iterator<Inlet<? super MapLane<K,V>>>outputIterator()Returns anIteratorover the set ofInlets that depend on the state of thisOutlet.Map.Entry<K,V>previousEntry(K key)KpreviousKey(K key)VpreviousValue(K key)Vput(K key, V value)voidputAll(Map<? extends K,? extends V> map)voidreconcile(int version)voidreconcileInput(int version)Reconciles the state of thisOutlet, if the version of thisOutlet's state differs from the targetversion.voidreconcileInputKey(K key, int version)Reconciles the state of an individualkeyin thisMapOutlet, if the version of thisMapOutlet's state differs from the targetversion.voidreconcileKey(K key, int version)voidreconcileOutput(int version)Reconciles the state of thisInlet, if the version of thisInlet's state differs from the targetversion.voidreconcileOutputKey(K key, int version)Reconciles the state of an individualkeyin thisMapInlet, if the version of thisMapInlet's state differs from the targetversion.Vremove(Object key)voidsetKeyForm(Form<K> keyForm)voidsetValueForm(Form<V> valueForm)intsize()OrderedMap<K,V>snapshot()OrderedMap<K,V>subMap(K fromKey, K toKey)OrderedMap<K,V>tailMap(K fromKey)voidtake(int upper)protected ObjecttypesafeObservers(Object observers)voidunbindInput()Disconnects thisInletfrom its inputOutlet, if connected.voidunbindOutput(Inlet<? super MapLane<K,V>> output)Removes anoutputfrom the set ofInlets that depend on the state of thisOutlet.voidunbindOutputs()Disconnects all outputs from thisOutletby invokingInlet.unbindInput()on eachIneltthat depends on the state of thisOutlet.MapLaneView<K,V>unobserve(Object observer)<V2> MapLaneView<K,V2>valueClass(Class<V2> valueClass)Form<V>valueForm()<V2> MapLaneView<K,V2>valueForm(Form<V2> valueForm)Cursor<V>valueIterator()Collection<V>values()MapLaneView<K,V>willClear(WillClear willClear)MapLaneView<K,V>willCommand(WillCommand willCommand)MapLaneView<K,V>willDrop(WillDrop willDrop)MapLaneView<K,V>willEnter(WillEnter willEnter)protected voidwillInvalidate()protected voidwillInvalidateKey(K key, KeyEffect effect)MapLaneView<K,V>willLeave(WillLeave willLeave)protected voidwillLoad()protected voidwillReconcile(int version)protected voidwillReconcileKey(K key, KeyEffect effect, int version)MapLaneView<K,V>willRemove(WillRemoveKey<K> willRemove)MapLaneView<K,V>willTake(WillTake willTake)protected voidwillUpdate(int version)MapLaneView<K,V>willUpdate(WillUpdateKey<K,V> willUpdate)MapLaneView<K,V>willUplink(WillUplink willUplink)-
Methods inherited from class swim.runtime.warp.WarpLaneView
dispatchDidCommand, dispatchDidEnter, dispatchDidLeave, dispatchDidUplink, dispatchWillCommand, dispatchWillEnter, dispatchWillLeave, dispatchWillUplink, laneDidCommand, laneDidEnter, laneDidLeave, laneDidUplink, laneWillCommand, laneWillEnter, laneWillLeave, laneWillUplink
-
Methods inherited from class swim.runtime.LaneView
bindDownlink, cellAddress, closeDownlink, debug, edgeName, error, fail, hostUri, info, laneContext, laneDidFail, laneUri, meshUri, nodeUri, openDownlink, openMetaDownlink, policy, pushDown, reportDown, schedule, stage, store, tierContext, trace, unwrapLane, warn
-
Methods inherited from class swim.runtime.AbstractTierBinding
activate, didClose, didFail, didLoad, didOpen, didStart, didStop, didUnload, isClosed, isLoaded, isOpened, isStarted, load, open, start, stop, unload, willClose, willOpen, willStart, willStop, willUnload
-
Methods inherited from class swim.runtime.AbstractSwimRef
command, command, command, command, command, command, command, command, command, command, command, command, command, command, command, command, downlink, downlinkHttp, downlinkList, downlinkMap, downlinkValue, downlinkWs, hostRef, hostRef, laneRef, laneRef, laneRef, laneRef, nodeRef, nodeRef, nodeRef, nodeRef
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAll
-
-
-
-
Field Detail
-
agentContext
protected final AgentContext agentContext
-
flags
protected int flags
-
laneBinding
protected MapLaneModel laneBinding
-
effects
protected HashTrieMap<K,KeyEffect> effects
-
outlets
protected HashTrieMap<K,KeyOutlet<K,V>> outlets
-
version
protected int version
-
-
Constructor Detail
-
MapLaneView
public MapLaneView(AgentContext agentContext, Form<K> keyForm, Form<V> valueForm)
-
-
Method Detail
-
agentContext
public AgentContext agentContext()
- Specified by:
agentContextin classLaneView
-
laneBinding
public MapLaneModel laneBinding()
- Specified by:
laneBindingin classLaneView
-
createLaneBinding
public MapLaneModel createLaneBinding()
- Specified by:
createLaneBindingin classLaneView
-
keyForm
public <K2> MapLaneView<K2,V> keyForm(Form<K2> keyForm)
-
keyClass
public <K2> MapLaneView<K2,V> keyClass(Class<K2> keyClass)
-
valueForm
public <V2> MapLaneView<K,V2> valueForm(Form<V2> valueForm)
-
valueClass
public <V2> MapLaneView<K,V2> valueClass(Class<V2> valueClass)
- Specified by:
valueClassin interfaceMapLane<K,V>
-
isResident
public final boolean isResident()
- Specified by:
isResidentin interfaceMapLane<K,V>
-
isResident
public MapLaneView<K,V> isResident(boolean isResident)
- Specified by:
isResidentin interfaceMapLane<K,V>
-
isTransient
public final boolean isTransient()
- Specified by:
isTransientin interfaceMapLane<K,V>
-
isTransient
public MapLaneView<K,V> isTransient(boolean isTransient)
- Specified by:
isTransientin interfaceMapLane<K,V>
-
willLoad
protected void willLoad()
- Overrides:
willLoadin classAbstractTierBinding
-
close
public void close()
-
observe
public MapLaneView<K,V> observe(Object observer)
- Specified by:
observein interfaceLane- Specified by:
observein interfaceMapLane<K,V>- Specified by:
observein interfaceObservable<K>- Specified by:
observein interfaceObservableMap<K,V>- Specified by:
observein interfaceObservableSortedMap<K,V>- Specified by:
observein interfaceWarpLane- Overrides:
observein classWarpLaneView
-
unobserve
public MapLaneView<K,V> unobserve(Object observer)
- Specified by:
unobservein interfaceLane- Specified by:
unobservein interfaceMapLane<K,V>- Specified by:
unobservein interfaceObservable<K>- Specified by:
unobservein interfaceObservableMap<K,V>- Specified by:
unobservein interfaceObservableSortedMap<K,V>- Specified by:
unobservein interfaceWarpLane- Overrides:
unobservein classWarpLaneView
-
willUpdate
public MapLaneView<K,V> willUpdate(WillUpdateKey<K,V> willUpdate)
- Specified by:
willUpdatein interfaceMapLane<K,V>- Specified by:
willUpdatein interfaceObservableMap<K,V>
-
didUpdate
public MapLaneView<K,V> didUpdate(DidUpdateKey<K,V> didUpdate)
-
willRemove
public MapLaneView<K,V> willRemove(WillRemoveKey<K> willRemove)
- Specified by:
willRemovein interfaceMapLane<K,V>- Specified by:
willRemovein interfaceObservableMap<K,V>
-
didRemove
public MapLaneView<K,V> didRemove(DidRemoveKey<K,V> didRemove)
-
willDrop
public MapLaneView<K,V> willDrop(WillDrop willDrop)
-
didDrop
public MapLaneView<K,V> didDrop(DidDrop didDrop)
-
willTake
public MapLaneView<K,V> willTake(WillTake willTake)
-
didTake
public MapLaneView<K,V> didTake(DidTake didTake)
-
willClear
public MapLaneView<K,V> willClear(WillClear willClear)
-
didClear
public MapLaneView<K,V> didClear(DidClear didClear)
-
willCommand
public MapLaneView<K,V> willCommand(WillCommand willCommand)
- Specified by:
willCommandin interfaceMapLane<K,V>- Specified by:
willCommandin interfaceWarpLane- Specified by:
willCommandin classWarpLaneView
-
didCommand
public MapLaneView<K,V> didCommand(DidCommand didCommand)
- Specified by:
didCommandin interfaceMapLane<K,V>- Specified by:
didCommandin interfaceWarpLane- Specified by:
didCommandin classWarpLaneView
-
willUplink
public MapLaneView<K,V> willUplink(WillUplink willUplink)
- Specified by:
willUplinkin interfaceMapLane<K,V>- Specified by:
willUplinkin interfaceWarpLane- Specified by:
willUplinkin classWarpLaneView
-
didUplink
public MapLaneView<K,V> didUplink(DidUplink didUplink)
-
willEnter
public MapLaneView<K,V> willEnter(WillEnter willEnter)
-
didEnter
public MapLaneView<K,V> didEnter(DidEnter didEnter)
-
willLeave
public MapLaneView<K,V> willLeave(WillLeave willLeave)
-
didLeave
public MapLaneView<K,V> didLeave(DidLeave didLeave)
-
dispatchWillUpdate
public Map.Entry<Boolean,V> dispatchWillUpdate(Link link, K key, V newValue, boolean preemptive)
-
dispatchDidUpdate
public boolean dispatchDidUpdate(Link link, K key, V newValue, V oldValue, boolean preemptive)
-
dispatchDidRemove
public boolean dispatchDidRemove(Link link, K key, V oldValue, boolean preemptive)
-
dispatchWillDrop
public boolean dispatchWillDrop(Link link, int lower, boolean preemptive)
-
dispatchDidDrop
public boolean dispatchDidDrop(Link link, int lower, boolean preemptive)
-
dispatchWillTake
public boolean dispatchWillTake(Link link, int upper, boolean preemptive)
-
dispatchDidTake
public boolean dispatchDidTake(Link link, int upper, boolean preemptive)
-
dispatchWillClear
public boolean dispatchWillClear(Link link, boolean preemptive)
-
dispatchDidClear
public boolean dispatchDidClear(Link link, boolean preemptive)
-
laneWillRemove
public void laneWillRemove(K key)
-
laneWillDrop
public void laneWillDrop(int lower)
-
laneDidDrop
public void laneDidDrop(int lower)
-
laneWillTake
public void laneWillTake(int upper)
-
laneDidTake
public void laneDidTake(int upper)
-
laneWillClear
public void laneWillClear()
-
laneDidClear
public void laneDidClear()
-
isEmpty
public boolean isEmpty()
-
size
public int size()
-
containsKey
public boolean containsKey(Object key)
Description copied from interface:MapOutletReturnstrueif the current state of thisMapOutletcontains the givenkey; otherwise returnsfalse.- Specified by:
containsKeyin interfaceIterableMap<K,V>- Specified by:
containsKeyin interfaceMap<K,V>- Specified by:
containsKeyin interfaceMapOutlet<K,V,MapLane<K,V>>- Specified by:
containsKeyin interfaceOrderedMap<K,V>
-
containsValue
public boolean containsValue(Object value)
- Specified by:
containsValuein interfaceIterableMap<K,V>- Specified by:
containsValuein interfaceMap<K,V>- Specified by:
containsValuein interfaceOrderedMap<K,V>
-
indexOf
public int indexOf(Object key)
- Specified by:
indexOfin interfaceOrderedMap<K,V>
-
get
public V get(Object key)
Description copied from interface:MapOutletReturns the value assocaited with the givenkeyin the current state of thisMapOutlet, if defined; otherwise returnsnull.
-
getEntry
public Map.Entry<K,V> getEntry(Object key)
- Specified by:
getEntryin interfaceOrderedMap<K,V>
-
getIndex
public Map.Entry<K,V> getIndex(int index)
- Specified by:
getIndexin interfaceOrderedMap<K,V>
-
firstEntry
public Map.Entry<K,V> firstEntry()
- Specified by:
firstEntryin interfaceOrderedMap<K,V>
-
firstKey
public K firstKey()
-
firstValue
public V firstValue()
- Specified by:
firstValuein interfaceOrderedMap<K,V>
-
lastKey
public K lastKey()
-
lastValue
public V lastValue()
- Specified by:
lastValuein interfaceOrderedMap<K,V>
-
nextEntry
public Map.Entry<K,V> nextEntry(K key)
- Specified by:
nextEntryin interfaceOrderedMap<K,V>
-
previousEntry
public Map.Entry<K,V> previousEntry(K key)
- Specified by:
previousEntryin interfaceOrderedMap<K,V>
-
previousKey
public K previousKey(K key)
- Specified by:
previousKeyin interfaceOrderedMap<K,V>
-
previousValue
public V previousValue(K key)
- Specified by:
previousValuein interfaceOrderedMap<K,V>
-
drop
public void drop(int lower)
- Specified by:
dropin interfaceObservableSortedMap<K,V>
-
take
public void take(int upper)
- Specified by:
takein interfaceObservableSortedMap<K,V>
-
clear
public void clear()
-
headMap
public OrderedMap<K,V> headMap(K toKey)
-
tailMap
public OrderedMap<K,V> tailMap(K fromKey)
-
subMap
public OrderedMap<K,V> subMap(K fromKey, K toKey)
-
values
public Collection<V> values()
-
iterator
public OrderedMapCursor<K,V> iterator()
-
keyIterator
public Cursor<K> keyIterator()
Description copied from interface:MapOutletReturns anIteratorover the keys in the current state of thisMapOutlet.- Specified by:
keyIteratorin interfaceIterableMap<K,V>- Specified by:
keyIteratorin interfaceMapLane<K,V>- Specified by:
keyIteratorin interfaceMapOutlet<K,V,MapLane<K,V>>- Specified by:
keyIteratorin interfaceOrderedMap<K,V>
-
valueIterator
public Cursor<V> valueIterator()
- Specified by:
valueIteratorin interfaceIterableMap<K,V>- Specified by:
valueIteratorin interfaceOrderedMap<K,V>
-
comparator
public Comparator<? super K> comparator()
- Specified by:
comparatorin interfaceOrderedMap<K,V>- Specified by:
comparatorin interfaceSortedMap<K,V>
-
get
public MapLane<K,V> get()
Description copied from interface:OutletReturns the current state of thisOutlet.
-
input
public MapOutlet<K,V,? extends Map<K,V>> input()
Description copied from interface:InletReturns theOutletfrom which thisInletacquires its state; returnsnullif thisInletis disconnected.
-
bindInput
public void bindInput(Outlet<? extends Map<K,V>> input)
Description copied from interface:InletConnects thisInletto anOutletfrom which it will acquire its state. If thisInletis already connected, it will first disconnect from its existing input. Then, after updating itsinputproperty, theInletwill invokeOutlet.bindOutput(Inlet)on its newinput.
-
unbindInput
public void unbindInput()
Description copied from interface:InletDisconnects thisInletfrom its inputOutlet, if connected. After setting itsinputproperty tonull, theInletwill invokeOutlet.unbindOutput(Inlet)on its old input, if defined.- Specified by:
unbindInputin interfaceInlet<K>
-
disconnectInputs
public void disconnectInputs()
Description copied from interface:InletDisconnects allInlets dominated by thisInletin the dataflow dependency graph. Used to recursively clean up chains of combinators terminating at thisInlet.- Specified by:
disconnectInputsin interfaceInlet<K>- Specified by:
disconnectInputsin interfaceOutlet<K>
-
outlet
public Outlet<V> outlet(K key)
Description copied from interface:MapOutletReturns anOutletthat updates when the specifiedkeyupdates.
-
outputIterator
public Iterator<Inlet<? super MapLane<K,V>>> outputIterator()
Description copied from interface:OutletReturns anIteratorover the set ofInlets that depend on the state of thisOutlet.- Specified by:
outputIteratorin interfaceOutlet<K>
-
bindOutput
public void bindOutput(Inlet<? super MapLane<K,V>> output)
Description copied from interface:OutletAdds anoutputto the set ofInlets that depend on the state of thisOutlet. Theoutputwill be invalidated when the state of thisOutletis invalidated, and updated when thisOutletis updated.- Specified by:
bindOutputin interfaceOutlet<K>
-
unbindOutput
public void unbindOutput(Inlet<? super MapLane<K,V>> output)
Description copied from interface:OutletRemoves anoutputfrom the set ofInlets that depend on the state of thisOutlet.- Specified by:
unbindOutputin interfaceOutlet<K>
-
unbindOutputs
public void unbindOutputs()
Description copied from interface:OutletDisconnects all outputs from thisOutletby invokingInlet.unbindInput()on eachIneltthat depends on the state of thisOutlet.- Specified by:
unbindOutputsin interfaceOutlet<K>
-
disconnectOutputs
public void disconnectOutputs()
Description copied from interface:InletDisconnects allOutlets dominated by thisInletin the dataflow graph. Used to recursively clean up chains of combinators passing through thisInlet.- Specified by:
disconnectOutputsin interfaceInlet<K>- Specified by:
disconnectOutputsin interfaceOutlet<K>
-
invalidateOutputKey
public void invalidateOutputKey(K key, KeyEffect effect)
Description copied from interface:MapInletMarks thisMapInletas needing aneffectapplied 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.
-
invalidateInputKey
public void invalidateInputKey(K key, KeyEffect effect)
Description copied from interface:MapOutletMarks thisMapOutletas needing aneffectapplied to a givenkey. Invalidating an individual key invalidates the entire state of theOutlet. But only the invalidated keys need to be updated in order to reconcile the overall state of theOutlet.
-
invalidateOutput
public void invalidateOutput()
Description copied from interface:InletMarks thisInlet—and theStreamletto which thisInletis attached—as having stale state. Invalidating anInletwill recursively invalidate all streamlets that transitively depend on the state of thisInlet. Invalidating anInletdoes not cause its state to be recomputed. A subsequentInlet.reconcileOutput(int)call will reconcile the state of theInlet.- Specified by:
invalidateOutputin interfaceInlet<K>
-
invalidateInput
public void invalidateInput()
Description copied from interface:Outlet- Specified by:
invalidateInputin interfaceOutlet<K>
-
invalidate
public void invalidate()
-
reconcileOutputKey
public void reconcileOutputKey(K key, int version)
Description copied from interface:MapInletReconciles the state of an individualkeyin thisMapInlet, if the version of thisMapInlet's state differs from the targetversion. To reconcile the state of a key, theMapInletfirst 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, theMapInletinvokesStreamlet.reconcile(int)on its attached streamlet.
-
reconcileInputKey
public void reconcileInputKey(K key, int version)
Description copied from interface:MapOutletReconciles the state of an individualkeyin thisMapOutlet, if the version of thisMapOutlet's state differs from the targetversion. To reconcile the state of a key, theMapOutletfirst invokesStreamlet.reconcile(int)on its attached streamlets. Then, for each dependent output, it invokesMapInlet.reconcileOutputKey(Object, int), if the dependent output is aMapInlet, or it invokesInlet.reconcileOutput(int), if the dependent output is not aMapInlet.
-
reconcileKey
public void reconcileKey(K key, int version)
-
reconcileOutput
public void reconcileOutput(int version)
Description copied from interface:InletReconciles the state of thisInlet, if the version of thisInlet's state differs from the targetversion. To reconcile its state, theInletfirst invokesOutlet.reconcileInput(int)on itsinput, to ensure that its input is up-to-date. It then invokesStreamlet.reconcile(int)on theStreamletto which it's attached, causing theStreamletto reconcile its own state.- Specified by:
reconcileOutputin interfaceInlet<K>
-
reconcileInput
public void reconcileInput(int version)
Description copied from interface:OutletReconciles the state of thisOutlet, if the version of thisOutlet's state differs from the targetversion. To reconcile its state, theOutletfirst invokesStreamlet.reconcile(int)on theStreamletto which it's attached. It then invokesInlet.reconcileOutput(int)on each of its dependentoutputs.- Specified by:
reconcileInputin interfaceOutlet<K>
-
reconcile
public void reconcile(int version)
-
willInvalidate
protected void willInvalidate()
-
onInvalidate
protected void onInvalidate()
-
didInvalidate
protected void didInvalidate()
-
willUpdate
protected void willUpdate(int version)
-
didUpdate
protected void didUpdate(int version)
-
willReconcile
protected void willReconcile(int version)
-
onReconcile
protected void onReconcile(int version)
-
didReconcile
protected void didReconcile(int version)
-
-