1 package org.opendaylight.protocol.framework;
3 import io.netty.util.concurrent.EventExecutor;
4 import io.netty.util.concurrent.Future;
6 import javax.annotation.concurrent.ThreadSafe;
8 import org.slf4j.Logger;
9 import org.slf4j.LoggerFactory;
11 import com.google.common.base.Preconditions;
14 * Utility ReconnectStrategy singleton, which will cause the reconnect process
15 * to immediately schedule a reconnection attempt.
18 public final class ReconnectImmediatelyStrategy implements ReconnectStrategy {
19 private static final Logger LOG = LoggerFactory.getLogger(ReconnectImmediatelyStrategy.class);
20 private final EventExecutor executor;
21 private final int timeout;
23 public ReconnectImmediatelyStrategy(final EventExecutor executor, final int timeout) {
24 Preconditions.checkArgument(timeout >= 0);
25 this.executor = Preconditions.checkNotNull(executor);
26 this.timeout = timeout;
30 public Future<Void> scheduleReconnect(final Throwable cause) {
31 LOG.debug("Connection attempt failed", cause);
32 return executor.newSucceededFuture(null);
36 public void reconnectSuccessful() {
41 public int getConnectTimeout() {