private void Handle(ClusterActorDiscoveryMessage.RegisterActor m)
        {
            _log.Debug($"RegisterActor: Actor={m.Actor.Path} Tag={m.Tag}");

            // add actor to _actorItems

            var index = _actorItems.FindIndex(a => a.Actor.Equals(m.Actor));

            if (index != -1)
            {
                _log.Error($"Already registered actor: Actor={m.Actor.Path} Tag={m.Tag}");
                return;
            }

            _actorItems.Add(new ActorItem {
                Actor = m.Actor, Tag = m.Tag
            });
            WatchActor(m.Actor, 0);

            // tell monitors & other discovery actors that local actor up

            NotifyActorUpToMonitor(m.Actor, m.Tag);
            foreach (var discoveryActor in _nodeMap.Keys)
            {
                discoveryActor.Tell(new ClusterActorDiscoveryMessage.ClusterActorUp(m.Actor, m.Tag));
            }
        }