/** * Open a bidirectional stream pipe. * * @param leftOpenListener the left-hand open listener * @param rightOpenListener the right-hand open listener * @param optionMap the pipe channel configuration * @throws java.io.IOException if the pipe could not be created * @deprecated Users should prefer the simpler {@link #createFullDuplexPipe()} instead. */ @Deprecated public void createPipe(ChannelListener<? super StreamChannel> leftOpenListener, ChannelListener<? super StreamChannel> rightOpenListener, final OptionMap optionMap) throws IOException { final ChannelPipe<StreamChannel, StreamChannel> pipe = createFullDuplexPipe(); final boolean establishWriting = optionMap.get(Options.WORKER_ESTABLISH_WRITING, false); final StreamChannel left = pipe.getLeftSide(); XnioExecutor leftExec = establishWriting ? left.getWriteThread() : left.getReadThread(); final StreamChannel right = pipe.getRightSide(); XnioExecutor rightExec = establishWriting ? right.getWriteThread() : right.getReadThread(); // not unsafe - http://youtrack.jetbrains.net/issue/IDEA-59290 //noinspection unchecked leftExec.execute(ChannelListeners.getChannelListenerTask(left, leftOpenListener)); // not unsafe - http://youtrack.jetbrains.net/issue/IDEA-59290 //noinspection unchecked rightExec.execute(ChannelListeners.getChannelListenerTask(right, rightOpenListener)); }
/** * Open a bidirectional stream pipe. * * @param leftOpenListener the left-hand open listener * @param rightOpenListener the right-hand open listener * @param optionMap the pipe channel configuration * @throws java.io.IOException if the pipe could not be created * @deprecated Users should prefer the simpler {@link #createFullDuplexPipe()} instead. */ @Deprecated public void createPipe(ChannelListener<? super StreamChannel> leftOpenListener, ChannelListener<? super StreamChannel> rightOpenListener, final OptionMap optionMap) throws IOException { final ChannelPipe<StreamChannel, StreamChannel> pipe = createFullDuplexPipe(); final boolean establishWriting = optionMap.get(Options.WORKER_ESTABLISH_WRITING, false); final StreamChannel left = pipe.getLeftSide(); XnioExecutor leftExec = establishWriting ? left.getWriteThread() : left.getReadThread(); final StreamChannel right = pipe.getRightSide(); XnioExecutor rightExec = establishWriting ? right.getWriteThread() : right.getReadThread(); // not unsafe - http://youtrack.jetbrains.net/issue/IDEA-59290 //noinspection unchecked leftExec.execute(ChannelListeners.getChannelListenerTask(left, leftOpenListener)); // not unsafe - http://youtrack.jetbrains.net/issue/IDEA-59290 //noinspection unchecked rightExec.execute(ChannelListeners.getChannelListenerTask(right, rightOpenListener)); }