Skip to content

Commit 0de0b6b

Browse files
committed
Address comments
1 parent a2ec160 commit 0de0b6b

File tree

2 files changed

+13
-6
lines changed

2 files changed

+13
-6
lines changed

src/main/java/io/cdap/http/NettyHttpService.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
package io.cdap.http;
1818

1919
import io.cdap.http.internal.BasicHandlerContext;
20-
import io.cdap.http.internal.ForwardingEventExecutor;
2120
import io.cdap.http.internal.ForwardingEventExecutorGroup;
21+
import io.cdap.http.internal.ForwardingOrderedEventExecutor;
2222
import io.cdap.http.internal.HttpDispatcher;
2323
import io.cdap.http.internal.HttpResourceHandler;
2424
import io.cdap.http.internal.NonStickyEventExecutorGroup;
@@ -43,6 +43,7 @@
4343
import io.netty.util.concurrent.EventExecutorGroup;
4444
import io.netty.util.concurrent.Future;
4545
import io.netty.util.concurrent.ImmediateEventExecutor;
46+
import io.netty.util.concurrent.OrderedEventExecutor;
4647
import io.netty.util.concurrent.UnorderedThreadPoolEventExecutor;
4748
import org.slf4j.Logger;
4849
import org.slf4j.LoggerFactory;
@@ -344,7 +345,12 @@ public void remove() {
344345
}
345346

346347
private EventExecutor wrapEventExecutor(EventExecutor executor) {
347-
return new ForwardingEventExecutor(executor) {
348+
if (!(executor instanceof OrderedEventExecutor)) {
349+
// This should never happen since we use the NonStickyEventExecutorGroup above.
350+
throw new IllegalStateException("The executor is not an OrderedEventExecutor: " + executor.getClass());
351+
}
352+
353+
return new ForwardingOrderedEventExecutor((OrderedEventExecutor) executor) {
348354

349355
@Override
350356
public EventExecutorGroup parent() {

src/main/java/io/cdap/http/internal/ForwardingEventExecutor.java renamed to src/main/java/io/cdap/http/internal/ForwardingOrderedEventExecutor.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import io.netty.util.concurrent.EventExecutor;
2020
import io.netty.util.concurrent.EventExecutorGroup;
2121
import io.netty.util.concurrent.Future;
22+
import io.netty.util.concurrent.OrderedEventExecutor;
2223
import io.netty.util.concurrent.ProgressivePromise;
2324
import io.netty.util.concurrent.Promise;
2425
import io.netty.util.concurrent.ScheduledFuture;
@@ -32,13 +33,13 @@
3233
import java.util.concurrent.TimeoutException;
3334

3435
/**
35-
* A {@link EventExecutor} that forwards all methods to another {@link EventExecutor}.
36+
* An {@link OrderedEventExecutor} that forwards all methods to another {@link OrderedEventExecutor}.
3637
*/
37-
public class ForwardingEventExecutor implements EventExecutor {
38+
public class ForwardingOrderedEventExecutor implements OrderedEventExecutor {
3839

39-
private final EventExecutor delegate;
40+
private final OrderedEventExecutor delegate;
4041

41-
public ForwardingEventExecutor(EventExecutor delegate) {
42+
public ForwardingOrderedEventExecutor(OrderedEventExecutor delegate) {
4243
this.delegate = delegate;
4344
}
4445

0 commit comments

Comments
 (0)