public UsersController(IUsersServiceProxy usersServiceProxy, IActorFactory actorFactory)
        {
            if (usersServiceProxy == null)
            {
                throw new ArgumentNullException(nameof(usersServiceProxy));
            }
            if (actorFactory == null)
            {
                throw new ArgumentNullException(nameof(actorFactory));
            }

            this.usersServiceProxy = usersServiceProxy;
            this.actorFactory      = actorFactory;
        }
Esempio n. 2
0
        public UserActor(ActorService actorService, ActorId actorId, IActorFactory actorFactory,
                         IServiceFactory serviceFactory, IUsersServiceProxy usersServiceProxy, IInvoicesServiceProxy invoicesServiceProxy)
            : base(actorService, actorId, actorFactory, serviceFactory)
        {
            if (usersServiceProxy == null)
            {
                this.usersServiceProxy = UsersServiceProxy.Instance;
            }
            else
            {
                this.usersServiceProxy = usersServiceProxy;
            }

            if (invoicesServiceProxy == null)
            {
                this.invoicesServiceProxy = InvoicesServiceProxy.Instance;
            }
            else
            {
                this.invoicesServiceProxy = invoicesServiceProxy;
            }
        }
Esempio n. 3
0
        internal static async Task <UserActor.UserActor> CreateUserActorAsync(ActorId id, IActorFactory actorFactory     = null,
                                                                              IServiceFactory serviceFactory             = null, IUsersServiceProxy usersServiceProxy = null,
                                                                              IInvoicesServiceProxy invoicesServiceProxy = null, bool invokeOnActivate                = true)
        {
            if (actorFactory == null)
            {
                actorFactory = new Mock <IActorFactory>().Object;
            }
            if (serviceFactory == null)
            {
                serviceFactory = new Mock <IServiceFactory>().Object;
            }
            if (usersServiceProxy == null)
            {
                usersServiceProxy = new Mock <IUsersServiceProxy>().Object;
            }
            if (invoicesServiceProxy == null)
            {
                invoicesServiceProxy = new Mock <IInvoicesServiceProxy>().Object;
            }

            Func <ActorService, ActorId, ActorBase> factory =
                (service, actorId) => new UserActor.UserActor(service, id, actorFactory, serviceFactory, usersServiceProxy, invoicesServiceProxy);

            var svc = MockActorServiceFactory.CreateActorServiceForActor <UserActor.UserActor>(factory);

            var actor = svc.Activate(id);

            if (invokeOnActivate)
            {
                await actor.InvokeOnActivateAsync();
            }

            return(actor);
        }