Module 

Class AbstractSynchronizedSinkConduit<D extends SinkConduit>

    • Constructor Detail

      • AbstractSynchronizedSinkConduit

        protected AbstractSynchronizedSinkConduit​(D next)
      • AbstractSynchronizedSinkConduit

        protected AbstractSynchronizedSinkConduit​(D next,
                                                  java.lang.Object lock)
    • Method Detail

      • terminateWrites

        public void terminateWrites()
                             throws java.io.IOException
        Description copied from interface: SinkConduit
        Signal that no more write data is forthcoming. The conduit must be SinkConduit.flush()ed before it is considered to be shut down.
        Specified by:
        terminateWrites in interface SinkConduit
        Throws:
        java.io.IOException
      • isWriteShutdown

        public boolean isWriteShutdown()
        Description copied from interface: SinkConduit
        Determine whether writes have been fully shut down on this conduit.
        Specified by:
        isWriteShutdown in interface SinkConduit
        Returns:
        true if writes are fully shut down, false otherwise
      • resumeWrites

        public void resumeWrites()
        Description copied from interface: SinkConduit
        Indicate that the conduit's WriteReadyHandler should be invoked as soon as data can be written without blocking.
        Specified by:
        resumeWrites in interface SinkConduit
      • wakeupWrites

        public void wakeupWrites()
        Description copied from interface: SinkConduit
        Indicate that the conduit's WriteReadyHandler should be invoked immediately, and then again as soon as data can be written without blocking.
        Specified by:
        wakeupWrites in interface SinkConduit
      • isWriteResumed

        public boolean isWriteResumed()
        Description copied from interface: SinkConduit
        Determine whether write notifications are currently enabled.
        Specified by:
        isWriteResumed in interface SinkConduit
        Returns:
        true if write notifications are enabled
      • awaitWritable

        public void awaitWritable()
                           throws java.io.IOException
        Description copied from interface: SinkConduit
        Block until this channel becomes writable again. This method may return spuriously before the channel becomes writable.
        Specified by:
        awaitWritable in interface SinkConduit
        Throws:
        java.io.InterruptedIOException - if the operation is interrupted; the thread's interrupt flag will be set as well
        java.io.IOException - if an I/O error occurs
      • awaitWritable

        public void awaitWritable​(long time,
                                  java.util.concurrent.TimeUnit timeUnit)
                           throws java.io.IOException
        Description copied from interface: SinkConduit
        Block until this conduit becomes writable again, or until the timeout expires. This method may return spuriously before the conduit becomes writable or the timeout expires.
        Specified by:
        awaitWritable in interface SinkConduit
        Parameters:
        time - the time to wait
        timeUnit - the time unit
        Throws:
        java.io.InterruptedIOException - if the operation is interrupted; the thread's interrupt flag will be set as well
        java.io.IOException - if an I/O error occurs
      • getWriteThread

        public XnioIoThread getWriteThread()
        Description copied from interface: SinkConduit
        Get the write thread for this conduit.
        Specified by:
        getWriteThread in interface SinkConduit
        Returns:
        the thread, or null if none is configured or available
      • setWriteReadyHandler

        public void setWriteReadyHandler​(WriteReadyHandler handler)
        Description copied from interface: SinkConduit
        Set the handler which should receive readiness notifications. A filter may pass this invocation on to the filter it wraps, or it may substitute itself.
        Specified by:
        setWriteReadyHandler in interface SinkConduit
      • truncateWrites

        public void truncateWrites()
                            throws java.io.IOException
        Description copied from interface: SinkConduit
        Terminate writes and discard any outstanding write data. The conduit is terminated and flushed regardless of the outcome of this method.
        Specified by:
        truncateWrites in interface SinkConduit
        Throws:
        java.io.IOException - if channel termination failed for some reason
      • flush

        public boolean flush()
                      throws java.io.IOException
        Description copied from interface: SinkConduit
        Flush out any unwritten, buffered output.
        Specified by:
        flush in interface SinkConduit
        Returns:
        true if everything is flushed, false otherwise
        Throws:
        java.io.IOException - if flush fails