BUG-8445: check sessionId before propagating failures
[controller.git] / opendaylight / md-sal / cds-access-client / src / main / java / org / opendaylight / controller / cluster / access / client / ConnectedClientConnection.java
index 9dad825e7e5eb20dd91a13f775a9cd3c03717d48..0afc7acf4945996e61e5996060a3b32424eba177 100644 (file)
@@ -7,37 +7,22 @@
  */
 package org.opendaylight.controller.cluster.access.client;
 
-import akka.actor.ActorRef;
 import com.google.common.annotations.Beta;
-import java.util.AbstractMap.SimpleImmutableEntry;
-import java.util.Map.Entry;
 import javax.annotation.concurrent.NotThreadSafe;
-import org.opendaylight.controller.cluster.access.concepts.Request;
-import org.opendaylight.controller.cluster.access.concepts.RequestEnvelope;
+import org.opendaylight.controller.cluster.access.concepts.RequestException;
 
 @Beta
 @NotThreadSafe
 public final class ConnectedClientConnection<T extends BackendInfo> extends AbstractReceivingClientConnection<T> {
-    public ConnectedClientConnection(final ClientActorContext context, final Long cookie, final T backend) {
+    ConnectedClientConnection(final ClientActorContext context, final Long cookie, final T backend) {
         super(context, cookie, backend);
     }
 
     @Override
-    ClientActorBehavior<T> reconnectConnection(final ClientActorBehavior<T> current) {
-        final ReconnectingClientConnection<T> next = new ReconnectingClientConnection<>(this);
+    ClientActorBehavior<T> lockedReconnect(final ClientActorBehavior<T> current, final RequestException cause) {
+        final ReconnectingClientConnection<T> next = new ReconnectingClientConnection<>(this, cause);
         setForwarder(new SimpleReconnectForwarder(next));
         current.reconnectConnection(this, next);
         return current;
     }
-
-    @Override
-    int remoteMaxMessages() {
-        return backend().getMaxMessages();
-    }
-
-    @Override
-    Entry<ActorRef, RequestEnvelope> prepareForTransmit(final Request<?, ?> req) {
-        return new SimpleImmutableEntry<>(backend().getActor(), new RequestEnvelope(
-            req.toVersion(backend().getVersion()), backend().getSessionId(), nextTxSequence()));
-    }
 }