- All Known Subinterfaces:
Inoutlet<I,,O> MapDownlink<K,,V> MapInletMapOutlet<KI,,KO, VI, VO, I, O> MapInletOutlet<K,,V, I, O> MapInoutlet<K,,VI, VO, I, O> MapLane<K,,V> MapOutlet<K,,V, O> RecordOutlet,ValueDownlink<V>,ValueLane<V>
- All Known Implementing Classes:
AbstractInoutlet,AbstractMapInletMapOutlet,AbstractMapInletOutlet,AbstractMapInoutlet,AbstractMapOutlet,AbstractOutlet,AbstractRecordOutlet,AndOutlet,BinaryOutlet,BitwiseAndOutlet,BitwiseNotOutlet,BitwiseOrOutlet,BitwiseXorOutlet,ConditionalOutlet,DivideOutlet,DownlinkRecord,EqOutlet,FilterFieldsCombinator,FilterFieldsOperator,GeOutlet,GetOutlet,GtOutlet,InvokeOutlet,JoinMapLaneDownlink,JoinValueLaneDownlink,KeyOutlet,LeOutlet,ListDownlinkRecord,LtOutlet,MapDownlinkRecord,MapDownlinkView,MapFieldValuesCombinator,MapFieldValuesOperator,MapInput,MapLaneView,MapValueCombinator,MapValueOperator,MemoizeMapCombinator,MemoizeValueCombinator,MinusOutlet,ModuloOutlet,NegativeOutlet,NeOutlet,NotOutlet,OrOutlet,PlusOutlet,PositiveOutlet,RecordModel,RecordScope,ReduceFieldsCombinator,ReduceFieldsOperator,StreamletInoutlet,StreamletOutlet,TimesOutlet,UnaryOutlet,ValueDownlinkRecord,ValueDownlinkView,ValueInput,ValueLaneView
public interface Outlet<O>
Output connector from a
Streamlet. An Outlet represents a
sink to which a Streamlet provides state.
An Outlet has a one-to-many relationship with a set of output sinks.
An output sink of an Outlet is an Inlet of some other
Streamlet. The bindOutput(Inlet) method "plugs" an
Inlet into the Outlet. The unbindOutput(Inlet) method
"unplugs" an Inlet from the Outlet.
-
Method Summary
Modifier and TypeMethodDescriptionvoidbindOutput(Inlet<? super O> output) Adds anoutputto the set ofInlets that depend on the state of thisOutlet.voidMarks thisOutlet—and alloutputsthat depend on the state of thisOutlet—as having decoherent state.voidDisconnects allInlets dominated by thisOutletin the dataflow dependency graph.voidDisconnects allOutlets dominated by thisOutletin the dataflow graph.get()Returns the current state of thisOutlet.default <O2> Outlet<O2>map(MapValueFunction<? super O, O2> func) memoize()Returns anIteratorover the set ofInlets that depend on the state of thisOutlet.voidrecohereInput(int version) Updates the state of thisOutletto make it consistent with the targetversion.voidunbindOutput(Inlet<? super O> output) Removes anoutputfrom the set ofInlets that depend on the state of thisOutlet.voidDisconnects all outputs from thisOutletby invokingInlet.unbindInput()on eachIneltthat depends on the state of thisOutlet.watch(WatchValueFunction<? super O> func)
-
Method Details
-
get
O get()Returns the current state of thisOutlet. -
outputIterator
Returns anIteratorover the set ofInlets that depend on the state of thisOutlet. -
bindOutput
Adds anoutputto the set ofInlets that depend on the state of thisOutlet. Theoutputwill be decohered when the state of thisOutletis decohered, and recohered when thisOutletis recohered. -
unbindOutput
Removes anoutputfrom the set ofInlets that depend on the state of thisOutlet. -
unbindOutputs
void unbindOutputs()Disconnects all outputs from thisOutletby invokingInlet.unbindInput()on eachIneltthat depends on the state of thisOutlet. -
disconnectOutputs
void disconnectOutputs()Disconnects allOutlets dominated by thisOutletin the dataflow graph. Used to recursively clean up chains of combinators originating from thisInlet. -
disconnectInputs
void disconnectInputs()Disconnects allInlets dominated by thisOutletin the dataflow dependency graph. Used to recursively clean up chains of combinators passing through thisOutlet. -
decohereInput
void decohereInput()Marks thisOutlet—and alloutputsthat depend on the state of thisOutlet—as having decoherent state. -
recohereInput
void recohereInput(int version) Updates the state of thisOutletto make it consistent with the targetversion. TheOutletonly needs to update if its currentversiondiffers from the targetversion. To update its state, theOutletfirst invokesStreamlet.recohere(int)on theStreamletto which it's attached. It then invokesInlet.recohereOutput(int)on each of its dependentoutputs. -
memoize
-
map
-
watch
-