From 2f89778fd64cf1e0f0baf119617af3e591c3c99a Mon Sep 17 00:00:00 2001 From: Redkale <8730487+redkale@users.noreply.github.com> Date: Mon, 17 Dec 2018 10:56:00 +0800 Subject: [PATCH] --- src/org/redkale/net/Context.java | 8 ++++++++ src/org/redkale/net/http/HttpContext.java | 6 ++++++ src/org/redkale/net/sncp/SncpContext.java | 6 ++++++ 3 files changed, 20 insertions(+) diff --git a/src/org/redkale/net/Context.java b/src/org/redkale/net/Context.java index ce4d3556e..b69953d4f 100644 --- a/src/org/redkale/net/Context.java +++ b/src/org/redkale/net/Context.java @@ -8,6 +8,7 @@ package org.redkale.net; import java.net.*; import java.nio.*; import java.nio.charset.*; +import java.util.Collection; import java.util.concurrent.*; import java.util.function.*; import java.util.logging.*; @@ -174,6 +175,13 @@ public class Context { } } + protected void offerBuffer(Collection buffers) { + if (buffers == null) return; + for (ByteBuffer buffer : buffers) { + bufferPool.accept(buffer); + } + } + public Logger getLogger() { return logger; } diff --git a/src/org/redkale/net/http/HttpContext.java b/src/org/redkale/net/http/HttpContext.java index c985c4575..a4b9aa73a 100644 --- a/src/org/redkale/net/http/HttpContext.java +++ b/src/org/redkale/net/http/HttpContext.java @@ -9,6 +9,7 @@ import java.nio.ByteBuffer; import org.redkale.asm.MethodDebugVisitor; import java.nio.channels.CompletionHandler; import java.security.*; +import java.util.Collection; import java.util.concurrent.*; import org.redkale.asm.*; import static org.redkale.asm.Opcodes.*; @@ -58,6 +59,11 @@ public class HttpContext extends Context { super.offerBuffer(buffers); } + @Override + protected void offerBuffer(Collection buffers) { + super.offerBuffer(buffers); + } + @SuppressWarnings("unchecked") protected Creator loadAsyncHandlerCreator(Class handlerClass) { Creator creator = asyncHandlerCreators.get(handlerClass); diff --git a/src/org/redkale/net/sncp/SncpContext.java b/src/org/redkale/net/sncp/SncpContext.java index bbb86c1a5..5d0034fc9 100644 --- a/src/org/redkale/net/sncp/SncpContext.java +++ b/src/org/redkale/net/sncp/SncpContext.java @@ -6,6 +6,7 @@ package org.redkale.net.sncp; import java.nio.ByteBuffer; +import java.util.Collection; import org.redkale.net.*; /** @@ -30,6 +31,11 @@ public class SncpContext extends Context { super.offerBuffer(buffers); } + @Override + protected void offerBuffer(Collection buffers) { + super.offerBuffer(buffers); + } + public static class SncpContextConfig extends ContextConfig { }