import akka.actor.ActorRef;
import akka.actor.PoisonPill;
import akka.persistence.AbstractPersistentActor;
-import com.google.common.annotations.Beta;
import org.opendaylight.controller.cluster.access.concepts.FrontendIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Frontend actor which takes care of persisting generations and creates an appropriate ClientIdentifier.
- *
- * @author Robert Varga
*/
-@Beta
public abstract class AbstractClientActor extends AbstractPersistentActor {
private static final Logger LOG = LoggerFactory.getLogger(AbstractClientActor.class);
+
private AbstractClientActorBehavior<?> currentBehavior;
protected AbstractClientActor(final FrontendIdentifier frontendId) {
- currentBehavior = new RecoveringClientActorBehavior(
- new InitialClientActorContext(this, frontendId.toPersistentId()), frontendId);
+ currentBehavior = new RecoveringClientActorBehavior(this, frontendId);
}
@Override
}
@Override
- public void postStop() {
+ public void postStop() throws Exception {
if (currentBehavior != null) {
currentBehavior.close();
}