X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2FRaftActor.java;h=0a043da742790a5b4c4e6cf26ef1d9ba1da320a7;hb=3bc363a69d6d48709f7fd741ef018ecd75b8f99b;hp=a8c32cd469ad60cc24819f6a58fc066cc0caa0a6;hpb=a90b34b052c46e4d405b1c477a3a5a0f47e1bd98;p=controller.git diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActor.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActor.java index a8c32cd469..0a043da742 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActor.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActor.java @@ -120,6 +120,8 @@ public abstract class RaftActor extends AbstractUntypedPersistentActor { private final SwitchBehaviorSupplier reusableSwitchBehaviorSupplier = new SwitchBehaviorSupplier(); + private RaftActorServerConfigurationSupport serverConfigurationSupport; + public RaftActor(String id, Map peerAddresses, Optional configParams, short payloadVersion) { @@ -142,6 +144,7 @@ public abstract class RaftActor extends AbstractUntypedPersistentActor { super.preStart(); snapshotSupport = newRaftActorSnapshotMessageSupport(); + serverConfigurationSupport = new RaftActorServerConfigurationSupport(getRaftActorContext()); } @Override @@ -236,7 +239,8 @@ public abstract class RaftActor extends AbstractUntypedPersistentActor { captureSnapshot(); } else if(message instanceof SwitchBehavior){ switchBehavior(((SwitchBehavior) message)); - } else if(!snapshotSupport.handleSnapshotMessage(message)) { + } else if(!snapshotSupport.handleSnapshotMessage(message) && + !serverConfigurationSupport.handleMessage(message, this, getSender())) { switchBehavior(reusableSwitchBehaviorSupplier.handleMessage(getSender(), message)); } }