From cd55d08a6829f05a8a42fb0ca625615aa5be81f2 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 27 Mar 2013 12:12:50 +0000
Subject: [PATCH] OPENDJ-832 Leverage the work queue for processing requests received on the HTTP connection handler
---
opendj3/opendj-ldap-sdk/src/main/java/com/forgerock/opendj/util/RecursiveFutureResult.java | 13 ++++++++++++-
1 files changed, 12 insertions(+), 1 deletions(-)
diff --git a/opendj3/opendj-ldap-sdk/src/main/java/com/forgerock/opendj/util/RecursiveFutureResult.java b/opendj3/opendj-ldap-sdk/src/main/java/com/forgerock/opendj/util/RecursiveFutureResult.java
index db39636..9aa3085 100644
--- a/opendj3/opendj-ldap-sdk/src/main/java/com/forgerock/opendj/util/RecursiveFutureResult.java
+++ b/opendj3/opendj-ldap-sdk/src/main/java/com/forgerock/opendj/util/RecursiveFutureResult.java
@@ -47,11 +47,14 @@
* The type of the outer result.
*/
public abstract class RecursiveFutureResult<M, N> implements FutureResult<N>, ResultHandler<M> {
- private final class FutureResultImpl extends AsynchronousFutureResult<N> {
+
+ private final class FutureResultImpl extends AsynchronousFutureResult<N, ResultHandler<? super N>> {
+
private FutureResultImpl(final ResultHandler<? super N> handler) {
super(handler);
}
+ @Override
public int getRequestID() {
if (innerFuture instanceof FutureResult<?>) {
final FutureResult<?> tmp = (FutureResult<?>) innerFuture;
@@ -97,6 +100,7 @@
/**
* {@inheritDoc}
*/
+ @Override
public final boolean cancel(final boolean mayInterruptIfRunning) {
return impl.cancel(mayInterruptIfRunning);
}
@@ -104,6 +108,7 @@
/**
* {@inheritDoc}
*/
+ @Override
public final N get() throws ErrorResultException, InterruptedException {
return impl.get();
}
@@ -111,6 +116,7 @@
/**
* {@inheritDoc}
*/
+ @Override
public final N get(final long timeout, final TimeUnit unit) throws ErrorResultException,
TimeoutException, InterruptedException {
return impl.get(timeout, unit);
@@ -119,6 +125,7 @@
/**
* {@inheritDoc}
*/
+ @Override
public final int getRequestID() {
return impl.getRequestID();
}
@@ -126,6 +133,7 @@
/**
* {@inheritDoc}
*/
+ @Override
public final void handleErrorResult(final ErrorResultException error) {
try {
outerFuture = chainErrorResult(error, impl);
@@ -137,6 +145,7 @@
/**
* {@inheritDoc}
*/
+ @Override
public final void handleResult(final M result) {
try {
outerFuture = chainResult(result, impl);
@@ -148,6 +157,7 @@
/**
* {@inheritDoc}
*/
+ @Override
public final boolean isCancelled() {
return impl.isCancelled();
}
@@ -155,6 +165,7 @@
/**
* {@inheritDoc}
*/
+ @Override
public final boolean isDone() {
return impl.isDone();
}
--
Gitblit v1.10.0