} else {
executor = null;
}
if (handler instanceof ChannelInboundHandler) {
Buf buf;
try {
buf = ((ChannelInboundHandler) handler).newInboundBuffer(this);
} catch (Exception e) {
throw new ChannelPipelineException(
handler.getClass().getSimpleName() + ".newInboundBuffer() raised an exception.", e);
}
if (buf instanceof ByteBuf) {
inByteBuf = (ByteBuf) buf;
inMsgBuf = null;
} else if (buf instanceof MessageBuf) {
inMsgBuf = (MessageBuf<Object>) buf;
inByteBuf = null;
} else {
throw new ChannelPipelineException(
handler.getClass().getSimpleName() + ".newInboundBuffer() returned neither " +
ByteBuf.class.getSimpleName() + " nor " + MessageBuf.class.getSimpleName() + ": " + buf);
}
} else {
inByteBuf = null;
inMsgBuf = null;
}
if (handler instanceof ChannelOutboundHandler) {
Buf buf;
try {
buf = ((ChannelOutboundHandler) handler).newOutboundBuffer(this);
} catch (Exception e) {
throw new ChannelPipelineException(
handler.getClass().getSimpleName() + ".newOutboundBuffer() raised an exception.", e);