Module swim.runtime

Class ValueLaneView<V>

  • All Implemented Interfaces:
    swim.api.downlink.DownlinkFactory, swim.api.Lane, swim.api.lane.ValueLane<V>, swim.api.ref.SwimRef, swim.api.warp.WarpLane, swim.observable.Observable<Object>, swim.observable.ObservableValue<V>, CellContext, TierBinding, swim.streamlet.Inlet<V>, swim.streamlet.Outlet<V>, swim.util.Log

    public class ValueLaneView<V>
    extends WarpLaneView
    implements swim.api.lane.ValueLane<V>
    • Field Detail

      • agentContext

        protected final swim.api.agent.AgentContext agentContext
      • valueForm

        protected swim.structure.Form<V> valueForm
      • flags

        protected int flags
      • input

        protected swim.streamlet.Outlet<? extends V> input
      • outputs

        protected swim.streamlet.Inlet<? super V>[] outputs
      • version

        protected int version
    • Constructor Detail

      • ValueLaneView

        public ValueLaneView​(swim.api.agent.AgentContext agentContext,
                             swim.structure.Form<V> valueForm)
    • Method Detail

      • agentContext

        public swim.api.agent.AgentContext agentContext()
        Specified by:
        agentContext in class LaneView
      • valueForm

        public final swim.structure.Form<V> valueForm()
        Specified by:
        valueForm in interface swim.api.lane.ValueLane<V>
      • valueForm

        public <V2> ValueLaneView<V2> valueForm​(swim.structure.Form<V2> valueForm)
        Specified by:
        valueForm in interface swim.api.lane.ValueLane<V>
      • valueClass

        public <V2> ValueLaneView<V2> valueClass​(Class<V2> valueClass)
        Specified by:
        valueClass in interface swim.api.lane.ValueLane<V>
      • setValueForm

        public void setValueForm​(swim.structure.Form<V> valueForm)
      • typesafeObservers

        protected Object typesafeObservers​(Object observers)
      • isResident

        public final boolean isResident()
        Specified by:
        isResident in interface swim.api.lane.ValueLane<V>
      • isResident

        public ValueLaneView<V> isResident​(boolean isResident)
        Specified by:
        isResident in interface swim.api.lane.ValueLane<V>
      • isTransient

        public final boolean isTransient()
        Specified by:
        isTransient in interface swim.api.lane.ValueLane<V>
      • isTransient

        public ValueLaneView<V> isTransient​(boolean isTransient)
        Specified by:
        isTransient in interface swim.api.lane.ValueLane<V>
      • close

        public void close()
        Specified by:
        close in interface swim.api.Lane
        Specified by:
        close in interface swim.api.ref.SwimRef
        Specified by:
        close in interface TierBinding
        Specified by:
        close in class LaneView
      • observe

        public ValueLaneView<V> observe​(Object observer)
        Specified by:
        observe in interface swim.api.Lane
        Specified by:
        observe in interface swim.observable.Observable<V>
        Specified by:
        observe in interface swim.observable.ObservableValue<V>
        Specified by:
        observe in interface swim.api.lane.ValueLane<V>
        Specified by:
        observe in interface swim.api.warp.WarpLane
        Overrides:
        observe in class WarpLaneView
      • unobserve

        public ValueLaneView<V> unobserve​(Object observer)
        Specified by:
        unobserve in interface swim.api.Lane
        Specified by:
        unobserve in interface swim.observable.Observable<V>
        Specified by:
        unobserve in interface swim.observable.ObservableValue<V>
        Specified by:
        unobserve in interface swim.api.lane.ValueLane<V>
        Specified by:
        unobserve in interface swim.api.warp.WarpLane
        Overrides:
        unobserve in class WarpLaneView
      • willSet

        public ValueLaneView<V> willSet​(swim.observable.function.WillSet<V> willSet)
        Specified by:
        willSet in interface swim.observable.ObservableValue<V>
        Specified by:
        willSet in interface swim.api.lane.ValueLane<V>
      • didSet

        public ValueLaneView<V> didSet​(swim.observable.function.DidSet<V> didSet)
        Specified by:
        didSet in interface swim.observable.ObservableValue<V>
        Specified by:
        didSet in interface swim.api.lane.ValueLane<V>
      • willCommand

        public ValueLaneView<V> willCommand​(swim.api.warp.function.WillCommand willCommand)
        Specified by:
        willCommand in interface swim.api.lane.ValueLane<V>
        Specified by:
        willCommand in interface swim.api.warp.WarpLane
        Specified by:
        willCommand in class WarpLaneView
      • didCommand

        public ValueLaneView<V> didCommand​(swim.api.warp.function.DidCommand didCommand)
        Specified by:
        didCommand in interface swim.api.lane.ValueLane<V>
        Specified by:
        didCommand in interface swim.api.warp.WarpLane
        Specified by:
        didCommand in class WarpLaneView
      • willUplink

        public ValueLaneView<V> willUplink​(swim.api.warp.function.WillUplink willUplink)
        Specified by:
        willUplink in interface swim.api.lane.ValueLane<V>
        Specified by:
        willUplink in interface swim.api.warp.WarpLane
        Specified by:
        willUplink in class WarpLaneView
      • didUplink

        public ValueLaneView<V> didUplink​(swim.api.warp.function.DidUplink didUplink)
        Specified by:
        didUplink in interface swim.api.lane.ValueLane<V>
        Specified by:
        didUplink in interface swim.api.warp.WarpLane
        Specified by:
        didUplink in class WarpLaneView
      • willEnter

        public ValueLaneView<V> willEnter​(swim.api.warp.function.WillEnter willEnter)
        Specified by:
        willEnter in interface swim.api.lane.ValueLane<V>
        Specified by:
        willEnter in interface swim.api.warp.WarpLane
        Specified by:
        willEnter in class WarpLaneView
      • didEnter

        public ValueLaneView<V> didEnter​(swim.api.warp.function.DidEnter didEnter)
        Specified by:
        didEnter in interface swim.api.lane.ValueLane<V>
        Specified by:
        didEnter in interface swim.api.warp.WarpLane
        Specified by:
        didEnter in class WarpLaneView
      • willLeave

        public ValueLaneView<V> willLeave​(swim.api.warp.function.WillLeave willLeave)
        Specified by:
        willLeave in interface swim.api.lane.ValueLane<V>
        Specified by:
        willLeave in interface swim.api.warp.WarpLane
        Specified by:
        willLeave in class WarpLaneView
      • didLeave

        public ValueLaneView<V> didLeave​(swim.api.warp.function.DidLeave didLeave)
        Specified by:
        didLeave in interface swim.api.lane.ValueLane<V>
        Specified by:
        didLeave in interface swim.api.warp.WarpLane
        Specified by:
        didLeave in class WarpLaneView
      • dispatchWillSet

        public Map.Entry<Boolean,​V> dispatchWillSet​(swim.api.Link link,
                                                          V newValue,
                                                          boolean preemptive)
      • dispatchDidSet

        public boolean dispatchDidSet​(swim.api.Link link,
                                      V newValue,
                                      V oldValue,
                                      boolean preemptive)
      • laneWillSet

        public V laneWillSet​(V newValue)
      • laneDidSet

        public void laneDidSet​(V newValue,
                               V oldValue)
      • get

        public V get()
        Specified by:
        get in interface swim.observable.ObservableValue<V>
        Specified by:
        get in interface swim.streamlet.Outlet<V>
        Specified by:
        get in interface swim.api.lane.ValueLane<V>
      • set

        public V set​(V newValue)
        Specified by:
        set in interface swim.observable.ObservableValue<V>
        Specified by:
        set in interface swim.api.lane.ValueLane<V>
      • input

        public swim.streamlet.Outlet<? extends V> input()
        Specified by:
        input in interface swim.streamlet.Inlet<V>
      • bindInput

        public void bindInput​(swim.streamlet.Outlet<? extends V> input)
        Specified by:
        bindInput in interface swim.streamlet.Inlet<V>
      • unbindInput

        public void unbindInput()
        Specified by:
        unbindInput in interface swim.streamlet.Inlet<V>
      • disconnectInputs

        public void disconnectInputs()
        Specified by:
        disconnectInputs in interface swim.streamlet.Inlet<V>
        Specified by:
        disconnectInputs in interface swim.streamlet.Outlet<V>
      • outputIterator

        public Iterator<swim.streamlet.Inlet<? super V>> outputIterator()
        Specified by:
        outputIterator in interface swim.streamlet.Outlet<V>
      • bindOutput

        public void bindOutput​(swim.streamlet.Inlet<? super V> output)
        Specified by:
        bindOutput in interface swim.streamlet.Outlet<V>
      • unbindOutput

        public void unbindOutput​(swim.streamlet.Inlet<? super V> output)
        Specified by:
        unbindOutput in interface swim.streamlet.Outlet<V>
      • unbindOutputs

        public void unbindOutputs()
        Specified by:
        unbindOutputs in interface swim.streamlet.Outlet<V>
      • disconnectOutputs

        public void disconnectOutputs()
        Specified by:
        disconnectOutputs in interface swim.streamlet.Inlet<V>
        Specified by:
        disconnectOutputs in interface swim.streamlet.Outlet<V>
      • decohereOutput

        public void decohereOutput()
        Specified by:
        decohereOutput in interface swim.streamlet.Inlet<V>
      • decohereInput

        public void decohereInput()
        Specified by:
        decohereInput in interface swim.streamlet.Outlet<V>
      • decohere

        public void decohere()
      • recohereOutput

        public void recohereOutput​(int version)
        Specified by:
        recohereOutput in interface swim.streamlet.Inlet<V>
      • recohereInput

        public void recohereInput​(int version)
        Specified by:
        recohereInput in interface swim.streamlet.Outlet<V>
      • recohere

        public void recohere​(int version)
      • willDecohere

        protected void willDecohere()
      • onDecohere

        protected void onDecohere()
      • didDecohere

        protected void didDecohere()
      • willRecohere

        protected void willRecohere​(int version)
      • onRecohere

        protected void onRecohere​(int version)
      • didRecohere

        protected void didRecohere​(int version)