From ede52c8f25aa2b7815e006cdfd6fe09f0766b548 Mon Sep 17 00:00:00 2001
From: Yannick Lecaillez <yannick.lecaillez@forgerock.com>
Date: Wed, 09 Nov 2016 14:54:10 +0000
Subject: [PATCH] OPENDJ-3179: Migrate LDAP Connection Handler to SDK Grizzly transport
---
opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/LdapResponseMessageWriter.java | 20 ++++----------------
1 files changed, 4 insertions(+), 16 deletions(-)
diff --git a/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/LdapResponseMessageWriter.java b/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/LdapResponseMessageWriter.java
index adecbcf..3c8c20b 100644
--- a/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/LdapResponseMessageWriter.java
+++ b/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/LdapResponseMessageWriter.java
@@ -20,7 +20,6 @@
import org.forgerock.opendj.ldap.spi.LdapMessages.LdapResponseMessage;
import org.glassfish.grizzly.CompletionHandler;
import org.glassfish.grizzly.Connection;
-import org.glassfish.grizzly.WriteHandler;
import org.reactivestreams.Subscriber;
import org.reactivestreams.Subscription;
@@ -44,25 +43,14 @@
return;
}
upstream = s;
- connection.notifyCanWrite(new WriteHandler() {
- @Override
- public void onWritePossible() throws Exception {
- final Subscription sub = upstream;
- if (sub != null) {
- sub.request(1);
- }
- }
-
- @Override
- public void onError(final Throwable error) {
- LdapResponseMessageWriter.this.onError(error);
- }
- });
+ // We're requesting two response to allow overlap between async I/O and response computation.
+ // (allows to generate a response while we're waiting for the previous message to be written)
+ upstream.request(2);
}
@Override
public void onNext(final LdapResponseMessage message) {
- connection.write(message).addCompletionHandler(this);
+ connection.write(message, this);
}
@Override
--
Gitblit v1.10.0