BUG-5626: do not allow overriding of RaftActor.handleCommand()
[controller.git] / opendaylight / md-sal / sal-akka-raft / src / main / java / org / opendaylight / controller / cluster / raft / behaviors / RaftActorBehavior.java
index b0a7638b92abdec6aef770cc6170a5c5353cc434..bf5116935d108c91ecec947cf7544ecc7f7cd3dc 100644 (file)
@@ -9,6 +9,7 @@
 package org.opendaylight.controller.cluster.raft.behaviors;
 
 import akka.actor.ActorRef;
+import javax.annotation.Nullable;
 import org.opendaylight.controller.cluster.raft.RaftState;
 
 /**
@@ -34,9 +35,9 @@ public interface RaftActorBehavior extends AutoCloseable{
      * @param sender The sender of the message
      * @param message A message that needs to be processed
      *
-     * @return The new behavior or current behavior
+     * @return The new behavior or current behavior, or null if the message was not handled.
      */
-    RaftActorBehavior handleMessage(ActorRef sender, Object message);
+    @Nullable RaftActorBehavior handleMessage(ActorRef sender, Object message);
 
     /**
      *
@@ -74,4 +75,7 @@ public interface RaftActorBehavior extends AutoCloseable{
      * @return The new behavior
      */
     RaftActorBehavior switchBehavior(RaftActorBehavior behavior);
+
+    @Override
+    void close();
 }