Skip to content

Instantly share code, notes, and snippets.

@franz1981
Created October 16, 2018 14:56
Show Gist options
  • Save franz1981/dfa918928a4f70e0f2daf390ddb54e2f to your computer and use it in GitHub Desktop.
Save franz1981/dfa918928a4f70e0f2daf390ddb54e2f to your computer and use it in GitHub Desktop.
default int write(Supplier<?> msgs, int limit, Predicate<? super ChannelOutboundInvoker> stopCondition, Supplier<? extends ChannelPromise> promises, Consumer<? super ChannelFuture> futures) {
for (int i = 0; i < limit; i++) {
final boolean stop = stopCondition.test(this);
if (stop) {
return i;
}
final Object msg = msgs.get();
assert msg != null;
final ChannelPromise promise = promises.get();
assert promise != null;
futures.accept(write(msg, promise));
}
return limit;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment