Class SelectableImpl

    • Constructor Detail

      • SelectableImpl

        public SelectableImpl()
    • Method Detail

      • isReading

        public boolean isReading()
        Specified by:
        isReading in interface Selectable
        Returns:
        true if the selectable is interested in receiving notification (via the Selectable.readable() method that indicate that the associated SelectableChannel has data ready to be read from it.
      • isWriting

        public boolean isWriting()
        Specified by:
        isWriting in interface Selectable
        Returns:
        true if the selectable is interested in receiving notifications (via the Selectable.writeable() method that indicate that the associated SelectableChannel is ready to be written to.
      • getDeadline

        public long getDeadline()
        Specified by:
        getDeadline in interface Selectable
        Returns:
        a deadline after which this selectable can expect to receive a notification (via the Selectable.expired() method that indicates that the deadline has past. The deadline is expressed in the same format as System.currentTimeMillis(). Returning a deadline of zero (or a negative number) indicates that the selectable does not wish to be notified of expiry.
      • onReadable

        public void onReadable​(Selectable.Callback runnable)
        Description copied from interface: Selectable
        Registers a callback that will be run when the selectable becomes ready for reading.
        Specified by:
        onReadable in interface Selectable
        Parameters:
        runnable - the callback to register. Any previously registered callback will be replaced.
      • onWritable

        public void onWritable​(Selectable.Callback runnable)
        Description copied from interface: Selectable
        Registers a callback that will be run when the selectable becomes ready for writing.
        Specified by:
        onWritable in interface Selectable
        Parameters:
        runnable - the callback to register. Any previously registered callback will be replaced.
      • onExpired

        public void onExpired​(Selectable.Callback runnable)
        Description copied from interface: Selectable
        Registers a callback that will be run when the selectable expires.
        Specified by:
        onExpired in interface Selectable
        Parameters:
        runnable - the callback to register. Any previously registered callback will be replaced.
      • onError

        public void onError​(Selectable.Callback runnable)
        Description copied from interface: Selectable
        Registers a callback that will be run when the selectable is notified of an error.
        Specified by:
        onError in interface Selectable
        Parameters:
        runnable - the callback to register. Any previously registered callback will be replaced.
      • onRelease

        public void onRelease​(Selectable.Callback runnable)
        Description copied from interface: Selectable
        Registers a callback that will be run when the selectable is notified that it has been released.
        Specified by:
        onRelease in interface Selectable
        Parameters:
        runnable - the callback to register. Any previously registered callback will be replaced.
      • onFree

        public void onFree​(Selectable.Callback runnable)
        Description copied from interface: Selectable
        Registers a callback that will be run when the selectable is notified that it has been free'd.
        Specified by:
        onFree in interface Selectable
        Parameters:
        runnable - the callback to register. Any previously registered callback will be replaced.
      • readable

        public void readable()
        Description copied from interface: Selectable
        Notify the selectable that the underlying SelectableChannel is ready for a read operation.
        Specified by:
        readable in interface Selectable
      • writeable

        public void writeable()
        Description copied from interface: Selectable
        Notify the selectable that the underlying SelectableChannel is ready for a write operation.
        Specified by:
        writeable in interface Selectable
      • expired

        public void expired()
        Description copied from interface: Selectable
        Notify the selectable that it has expired.
        Specified by:
        expired in interface Selectable
      • error

        public void error()
        Description copied from interface: Selectable
        Notify the selectable that an error has occurred.
        Specified by:
        error in interface Selectable
      • release

        public void release()
        Description copied from interface: Selectable
        Notify the selectable that it has been released.
        Specified by:
        release in interface Selectable
      • free

        public void free()
        Description copied from interface: Selectable
        Notify the selectable that it has been free'd.
        Specified by:
        free in interface ReactorChild
        Specified by:
        free in interface Selectable
      • setChannel

        public void setChannel​(java.nio.channels.SelectableChannel channel)
        Description copied from interface: Selectable
        Associates a SelectableChannel with this selector.
        Specified by:
        setChannel in interface Selectable
      • getChannel

        public java.nio.channels.SelectableChannel getChannel()
        Specified by:
        getChannel in interface Selectable
        Returns:
        the SelectableChannel associated with this selector.
      • isRegistered

        public boolean isRegistered()
        Description copied from interface: Selectable
        Check if a selectable is registered. This can be used for tracking whether a given selectable has been registerd with an external event loop.

        Note: the reactor code, currently, does not use this flag.

        Specified by:
        isRegistered in interface Selectable
        Returns:
        trueif the selectable is registered.
      • setRegistered

        public void setRegistered​(boolean registered)
        Description copied from interface: Selectable
        Set the registered flag for a selectable.

        Note: the reactor code, currently, does not use this flag.

        Specified by:
        setRegistered in interface Selectable
        Parameters:
        registered - the value returned by Selectable.isRegistered()
      • setCollector

        public void setCollector​(Collector collector)
        Description copied from interface: Selectable
        Configure a selectable with a set of callbacks that emit readable, writable, and expired events into the supplied collector.
        Specified by:
        setCollector in interface Selectable
      • getReactor

        public Reactor getReactor()
        Specified by:
        getReactor in interface Selectable
        Returns:
        the reactor to which this selectable is a child.
      • terminate

        public void terminate()
        Description copied from interface: Selectable
        Terminates the selectable. Once a selectable reaches a terminal state it will never be interested in events of any kind.
        Specified by:
        terminate in interface Selectable
      • isTerminal

        public boolean isTerminal()
        Specified by:
        isTerminal in interface Selectable
        Returns:
        true if the selectable has reached a terminal state.
      • getTransport

        protected Transport getTransport()
      • setTransport

        protected void setTransport​(Transport transport)
      • setReactor

        protected void setReactor​(Reactor reactor)
      • isTerminated

        public boolean isTerminated()
      • terminated

        public void terminated()