158159160161162163164165166167168
decodeWasNull = size == 0; for (int i = 0; i < size; i ++) { ctx.fireChannelRead(out.get(i)); } out.recycle(); } } else { ctx.fireChannelRead(msg); } }
224225226227228229230231232233234
ctx.fireChannelReadComplete(); } ctx.fireChannelInactive(); } finally { // recycle in all cases out.recycle(); } } } /**
350351352353354355356357358359360
ctx.fireChannelReadComplete(); } ctx.fireChannelInactive(); } finally { // recycle in all cases out.recycle(); } } } @Override
208209210211212213214215216217218
runPendingTasks(); checkException(); return !outboundMessages.isEmpty(); } finally { futures.recycle(); } } /** * Mark this {@link Channel} as finished. Any futher try to write data to it will fail.
215216217218219220221222223224225
100101102103104105106107108109110
} finally { int size = out.size(); for (int i = 0; i < size; i ++) { ctx.fireChannelRead(out.get(i)); } out.recycle(); } } /** * Decode from one message to an other. This method will be called for each written message that can be handled
90919293949596979899100
} finally { ReferenceCountUtil.release(cast); } if (out.isEmpty()) { out.recycle(); out = null; throw new EncoderException( StringUtil.simpleClassName(this) + " must produce at least one message."); }
124125126127128129130131132133134
} ctx.write(out.get(i), p); } ctx.write(out.get(sizeMinusOne), promise); } out.recycle(); } } } /**
159160161162163164165166167168169
225226227228229230231232233234235