Ejemplo n.º 1
0
        private void SetupActorInternal(Type actorImplementationType)
        {
            var actorInterface = actorImplementationType.IsInterface
                ? actorImplementationType
                : actorImplementationType.GetInterfaces().FirstOrDefault(i => i.GetInterfaces().Any(i2 => i2 == typeof(IActor)));
            var actorRegistration = new MockableActorRegistration(actorInterface, actorImplementationType,
                                                                  (Func <ActorService, ActorId, IActor>)((actorService, actorId) => (IActor)Activator.CreateInstance(actorImplementationType, actorService, actorId)),
                                                                  null, null);

            ((MockActorProxyFactory)ActorProxyFactory).AddActorRegistration(actorRegistration);
        }
Ejemplo n.º 2
0
        public void SetupActor <TActorImplementation>(
            Func <ActorService, ActorId, TActorImplementation> activator,
            CreateStateManager createStateManager   = null,
            CreateStateProvider createStateProvider = null)
            where TActorImplementation : class, IActor
        {
            var actorInterface = typeof(TActorImplementation).IsInterface
                ? typeof(TActorImplementation)
                : typeof(TActorImplementation).GetInterfaces().FirstOrDefault(i => i.GetInterfaces().Any(i2 => i2 == typeof(IActor)));
            var actorRegistration = new MockableActorRegistration(actorInterface, typeof(TActorImplementation), activator, createStateManager, createStateProvider);

            ((MockActorProxyFactory)ActorProxyFactory).AddActorRegistration(actorRegistration);
        }
Ejemplo n.º 3
0
        public void SetupActor <TActorImplementation, TActorService>(
            Func <TActorService, ActorId, TActorImplementation> activator,
            CreateActorService <TActorService> createActorService,
            CreateStateManager createStateManager   = null,
            CreateStateProvider createStateProvider = null)
            where TActorImplementation : class, IActor
            where TActorService : ActorService
        {
            var actorInterface = typeof(TActorImplementation).IsInterface
                ? typeof(TActorImplementation)
                : typeof(TActorImplementation).GetInterfaces().FirstOrDefault(i => i.GetInterfaces().Any(i2 => i2 == typeof(IActor)));
            var actorRegistration = new MockableActorRegistration <TActorService>(
                interfaceType: actorInterface,
                implementationType: typeof(TActorImplementation),
                createActorService: createActorService,
                activator: (Func <ActorService, ActorId, TActorImplementation>)((actorService, actorId) => activator((TActorService)actorService, actorId)),
                createStateManager: createStateManager,
                createStateProvider: createStateProvider);

            ((MockActorProxyFactory)ActorProxyFactory).AddActorRegistration(actorRegistration);
        }