code: @Deprecated
      public static <I extends StreamSourceChannel, O extends StreamSinkChannel> void initiateTransfer(final I source, final O sink, final ChannelListener<? super I> sourceListener, final ChannelListener<? super O> sinkListener, final ChannelExceptionHandler<? super I> readExceptionHandler, final ChannelExceptionHandler<? super O> writeExceptionHandler, ByteBufferPool pool) {
          Transfer.initiateTransfer(source, sink, sourceListener, sinkListener, readExceptionHandler, writeExceptionHandler, pool);
      }
docs: Initiate a low-copy transfer between two stream channels.  The pool should be a direct buffer pool for best
  performance.
  
  @param source                the source channel
  @param sink                  the target channel
  @param sourceListener        the source listener to set and call when the transfer is complete, or {@code null} to clear the listener at that time
  @param sinkListener          the target listener to set and call when the transfer is complete, or {@code null} to clear the listener at that time
  @param readExceptionHandler  the read exception handler to call if an error occurs during a read operation
  @param writeExceptionHandler the write exception handler to call if an error occurs during a write operation
  @param pool                  the pool from which the transfer buffer should be allocated