Exemplo n.º 1
0
        /// <summary>
        /// TBD
        /// </summary>
        /// <param name="self">TBD</param>
        /// <returns>TBD</returns>
        internal static IActorRefProvider ResolveProvider(ICanTell self)
        {
            if (ActorCell.Current != null)
            {
                return(InternalCurrentActorCellKeeper.Current.SystemImpl.Provider);
            }

            if (self is IInternalActorRef)
            {
                return(self.AsInstanceOf <IInternalActorRef>().Provider);
            }

            if (self is ActorSelection)
            {
                return(ResolveProvider(self.AsInstanceOf <ActorSelection>().Anchor));
            }

            return(null);
        }