
io.cdap.http.internal.ForwardingEventExecutorGroup Maven / Gradle / Ivy
/*
* Copyright © 2021 Cask Data, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package io.cdap.http.internal;
import io.netty.util.concurrent.EventExecutor;
import io.netty.util.concurrent.EventExecutorGroup;
import io.netty.util.concurrent.Future;
import io.netty.util.concurrent.ScheduledFuture;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
/**
* A {@link EventExecutorGroup} that forwards all methods to another {@link EventExecutorGroup}.
*/
public class ForwardingEventExecutorGroup implements EventExecutorGroup {
private final EventExecutorGroup delegate;
public ForwardingEventExecutorGroup(EventExecutorGroup delegate) {
this.delegate = delegate;
}
@Override
public boolean isShuttingDown() {
return delegate.isShuttingDown();
}
@Override
public Future> shutdownGracefully() {
return delegate.shutdownGracefully();
}
@Override
public Future> shutdownGracefully(long l, long l1, TimeUnit timeUnit) {
return delegate.shutdownGracefully(l, l1, timeUnit);
}
@Override
public Future> terminationFuture() {
return delegate.terminationFuture();
}
@Override
@Deprecated
public void shutdown() {
delegate.shutdown();
}
@Override
@Deprecated
public List shutdownNow() {
return delegate.shutdownNow();
}
@Override
public EventExecutor next() {
return delegate.next();
}
@Override
public Iterator iterator() {
return delegate.iterator();
}
@Override
public Future> submit(Runnable runnable) {
return delegate.submit(runnable);
}
@Override
public Future submit(Runnable runnable, T t) {
return delegate.submit(runnable, t);
}
@Override
public Future submit(Callable callable) {
return delegate.submit(callable);
}
@Override
public ScheduledFuture> schedule(Runnable runnable, long l, TimeUnit timeUnit) {
return delegate.schedule(runnable, l, timeUnit);
}
@Override
public ScheduledFuture schedule(Callable callable, long l, TimeUnit timeUnit) {
return delegate.schedule(callable, l, timeUnit);
}
@Override
public ScheduledFuture> scheduleAtFixedRate(Runnable runnable, long l, long l1, TimeUnit timeUnit) {
return delegate.scheduleAtFixedRate(runnable, l, l1, timeUnit);
}
@Override
public ScheduledFuture> scheduleWithFixedDelay(Runnable runnable, long l, long l1, TimeUnit timeUnit) {
return delegate.scheduleWithFixedDelay(runnable, l, l1, timeUnit);
}
@Override
public boolean isShutdown() {
return delegate.isShutdown();
}
@Override
public boolean isTerminated() {
return delegate.isTerminated();
}
@Override
public boolean awaitTermination(long timeout, TimeUnit unit) throws InterruptedException {
return delegate.awaitTermination(timeout, unit);
}
@Override
public List> invokeAll(Collection extends Callable> tasks)
throws InterruptedException {
return delegate.invokeAll(tasks);
}
@Override
public List> invokeAll(Collection extends Callable> tasks,
long timeout, TimeUnit unit) throws InterruptedException {
return delegate.invokeAll(tasks, timeout, unit);
}
@Override
public T invokeAny(Collection extends Callable> tasks) throws InterruptedException, ExecutionException {
return delegate.invokeAny(tasks);
}
@Override
public T invokeAny(Collection extends Callable> tasks, long timeout, TimeUnit unit)
throws InterruptedException, ExecutionException, TimeoutException {
return delegate.invokeAny(tasks, timeout, unit);
}
@Override
public void execute(Runnable command) {
delegate.execute(command);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy