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; }
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; } }
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); }