1 package org.opendaylight.controller.cluster.raft;
3 import org.opendaylight.controller.cluster.raft.behaviors.Candidate;
4 import org.opendaylight.controller.cluster.raft.behaviors.Follower;
5 import org.opendaylight.controller.cluster.raft.behaviors.IsolatedLeader;
6 import org.opendaylight.controller.cluster.raft.behaviors.Leader;
7 import org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior;
9 public enum RaftState {
12 public RaftActorBehavior createBehavior(RaftActorContext context) {
13 return new Candidate(context);
18 public RaftActorBehavior createBehavior(RaftActorContext context) {
19 return new Follower(context);
24 public RaftActorBehavior createBehavior(RaftActorContext context) {
25 return new Leader(context);
30 public RaftActorBehavior createBehavior(RaftActorContext context) {
31 return new IsolatedLeader(context);
35 public abstract RaftActorBehavior createBehavior(RaftActorContext context);