import akka.actor.typed.javadsl.ActorContext;
import akka.actor.typed.javadsl.Behaviors;
import akka.actor.typed.javadsl.Receive;
import akka.actor.typed.javadsl.ActorContext;
import akka.actor.typed.javadsl.Behaviors;
import akka.actor.typed.javadsl.Receive;
import akka.cluster.typed.Cluster;
import akka.pattern.StatusReply;
import org.opendaylight.controller.eos.akka.owner.supervisor.command.ActivateDataCenter;
import akka.cluster.typed.Cluster;
import akka.pattern.StatusReply;
import org.opendaylight.controller.eos.akka.owner.supervisor.command.ActivateDataCenter;
import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntitiesBackendRequest;
import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntityBackendRequest;
import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntityOwnerBackendRequest;
import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntitiesBackendRequest;
import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntityBackendRequest;
import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntityOwnerBackendRequest;
* in the primary datacenter, or is activated on demand. Once the supervisor instance is no longer needed in the
* secondary datacenter it needs to be deactivated manually.
*/
* in the primary datacenter, or is activated on demand. Once the supervisor instance is no longer needed in the
* secondary datacenter it needs to be deactivated manually.
*/
private static final Logger LOG = LoggerFactory.getLogger(IdleSupervisor.class);
private static final String DATACENTER_PREFIX = "dc-";
private static final Logger LOG = LoggerFactory.getLogger(IdleSupervisor.class);
private static final String DATACENTER_PREFIX = "dc-";
.onMessage(GetEntitiesBackendRequest.class, this::onFailEntityRpc)
.onMessage(GetEntityBackendRequest.class, this::onFailEntityRpc)
.onMessage(GetEntityOwnerBackendRequest.class, this::onFailEntityRpc)
.onMessage(GetEntitiesBackendRequest.class, this::onFailEntityRpc)
.onMessage(GetEntityBackendRequest.class, this::onFailEntityRpc)
.onMessage(GetEntityOwnerBackendRequest.class, this::onFailEntityRpc)
return selfMember.getRoles().stream()
.filter(role -> role.startsWith(DATACENTER_PREFIX))
.findFirst()
.orElseThrow(() -> new IllegalArgumentException(selfMember + " does not have a valid role"));
}
return selfMember.getRoles().stream()
.filter(role -> role.startsWith(DATACENTER_PREFIX))
.findFirst()
.orElseThrow(() -> new IllegalArgumentException(selfMember + " does not have a valid role"));
}