Akka.Cluster.Tools.PublishSubscribe.Internal.TopicLike.DefaultReceive C# (CSharp) Метод

DefaultReceive() защищенный Метод

protected DefaultReceive ( object message ) : bool
message object
Результат bool
        protected bool DefaultReceive(object message)
        {
            if (message is Subscribe)
            {
                var subscribe = (Subscribe)message;

                Context.Watch(subscribe.Ref);
                Subscribers.Add(subscribe.Ref);
                PruneDeadline = null;
                Context.Parent.Tell(new Subscribed(new SubscribeAck(subscribe), Sender));
            }
            else if (message is Unsubscribe)
            {
                var unsubscribe = (Unsubscribe)message;

                Context.Unwatch(unsubscribe.Ref);
                Remove(unsubscribe.Ref);
                Context.Parent.Tell(new Unsubscribed(new UnsubscribeAck(unsubscribe), Sender));
            }
            else if (message is Terminated)
            {
                var terminated = (Terminated)message;
                Remove(terminated.ActorRef);
            }
            else if (message is Prune)
            {
                if (PruneDeadline != null && PruneDeadline.IsOverdue) Context.Stop(Self);
            }
            else
            {
                foreach (var subscriber in Subscribers)
                    subscriber.Forward(message);
            }

            return true;
        }