public SubscriptionToken SubscribeForMessage <T>(PID subscriber, bool subscribeOnParent, RoutingFilter filter = null) where T : ActorMessage { if (subscribeOnParent) { subscriber = _actorFactory.GetParentActor(subscriber); } var sub = GetSubscription <T>(subscriber); if (!_subscriptionCahce.Add(sub)) { return(SubscriptionToken.Empty); } return(_eventAggregator.Subscribe <T>(message => _actorFactory.Context.Send(subscriber, message.Message), filter)); }