X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-client%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fclient%2FReconnectForwarder.java;h=58334f91d79199dd713f7bf8f139800f999c4260;hb=b4bf55727093657662d8c16a50fa85f87978a586;hp=25e5d6edfebc8acabb10347480a5c6f01ff19a5e;hpb=b4d95acff78952020e9fbde4372d13b461fd7469;p=controller.git diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ReconnectForwarder.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ReconnectForwarder.java index 25e5d6edfe..58334f91d7 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ReconnectForwarder.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ReconnectForwarder.java @@ -8,11 +8,6 @@ package org.opendaylight.controller.cluster.access.client; import com.google.common.base.Preconditions; -import java.util.function.Consumer; -import org.opendaylight.controller.cluster.access.concepts.Request; -import org.opendaylight.controller.cluster.access.concepts.Response; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; /** * Forwarder class responsible for routing requests from the previous connection incarnation back to the originator, @@ -21,7 +16,6 @@ import org.slf4j.LoggerFactory; * @author Robert Varga */ public abstract class ReconnectForwarder { - static final Logger LOG = LoggerFactory.getLogger(ReconnectForwarder.class); // Visible for subclass method handle private final AbstractReceivingClientConnection successor; @@ -29,12 +23,18 @@ public abstract class ReconnectForwarder { this.successor = Preconditions.checkNotNull(successor); } - protected final void sendToSuccessor(final Request request, final Consumer> callback) { - successor.sendRequest(request, callback); + protected final void sendToSuccessor(final ConnectionEntry entry) { + successor.sendRequest(entry.getRequest(), entry.getCallback()); + } + + protected final void replayToSuccessor(final ConnectionEntry entry) { + successor.enqueueRequest(entry.getRequest(), entry.getCallback(), entry.getEnqueuedTicks()); } protected abstract void forwardEntry(ConnectionEntry entry, long now); + protected abstract void replayEntry(ConnectionEntry entry, long now); + final AbstractReceivingClientConnection successor() { return successor; }